2009-05-11 4 views
1

종료 I 절은 당신이 주간 종료 날짜 '를 입력 할 수 있습니다이액세스 보고서 - 쇼 주 날짜

SELECT 
... 
FROM Clients AS wc INNER JOIN ... 
WHERE ((wo.OfferStatusID)=3) AND 
((DatePart("ww",[wo.StatusTimeStamp]))=DatePart("ww",[Enter Week End Date])) 
AND ((Year([wo.StatusTimeStamp]))=Year(Date()))); 

등 쿼리를 기반으로 액세스 2000 보고서를 가지고 있고 그것을 위해 모든 레코드를 찾습니다 종료일이 포함 된 일요일 - 토요일 요일

내 문제는 보고서에 토요일 종료일을 포함 시켜서 ... '5/9/09'에 끝나는 주간을 읽어야하며 문제없이 해당 날짜를받는 방법을 알아낼 수 있어야합니다. 두 번째 질문을하는 질문.

강제로 결과에 다른 필드로 입력 한 매개 변수를 반환하거나 다른 주말 날짜를 가져 오는 방법이 있습니까?

답변

4

내가 SELECT 절에이를 추가하고 각 행에 추가 입력 한 값 얻을 수 있다는 것을 발견 쿼리 디자이너 주위 찌를 계속 :

[Enter Week End Date] AS WeekEndDate 

이 작동을하지만, 난 여전히 다른 문을 열어주는 말들 제안.

+0

좋은 결과를 얻을 수 있습니다 :-) –

0

두 개의 쿼리를 쌓을 수 있습니다 (다른 쿼리의 소스로 사용). 이것은 꽤 MS Access'y 것입니다. 그러나, 당신이 지금 일하고 있다면, 나는 당신이 가지고있는 것을 고수 할 것입니다. 아마 더 깨끗합니다.

0

또 다른 방법은 폼을 사용하여 쿼리 매개 변수를 먼저 가져 와서 쿼리에서 폼 컨트롤을 참조하는 것입니다. 예를 들어, 예제를 사용하여 frmGetDateParam이라는 양식을 작성하고 txtDate라는 텍스트 상자를 추가하십시오. 형식을 날짜로 변경하십시오. 일부 유효성 검사를 추가해도 상관 없습니다. 보고서를 여는 양식에 명령 단추를 추가하십시오. 그런 다음, 다음과 같이하도록 조회를 변경 : -

SELECT 
... 
FROM Clients AS wc INNER JOIN ... 
WHERE ((wo.OfferStatusID)=3) AND 
((DatePart("ww",[wo.StatusTimeStamp]))=DatePart("ww",Forms!frmGetDateParam!txtDate)) 
AND ((Year([Forms!frmGetDateParam!txtDate]))=Year(Date()))); 

또한 보고서에 필드로 양식 frmGetDateParam txtDate로 참조 할 수 있습니다!를.

유일한 단점은 열려있는 매개 변수 폼을 사용하지 않고 쿼리/보고서를 열려고해도 여전히 쿼리에 날짜 값을 묻는 것입니다.