Pat Hartman
03-07-2002, 09:54 AM
I have a query that produces different results when run against a Sybase table than it produces when run against an identical set of data in an Access table. The query refers to three screen fields that are set on a form we use for filtering the result set. When E.DataEntryCompleteFlg and Forms!frmFilter!txtHiddenWork are both 0, correct results are returned. When the values are both -1, Sybase does not recognize the values as being equal.
SELECT E.CISCompanyNum, dbo_CISCompany.CISCompanyName, E.UWRespName, Year([ChangeEffDt]) AS ContractYear, s.last_nm & ", " & s.first_nm AS FullName
FROM dbo_CISCompany INNER JOIN (dbo_ERCContractExhibit AS E INNER JOIN dbo_tb_user AS s ON E.UWRespName = s.user_id) ON dbo_CISCompany.CISCompanyNum = E.CISCompanyNum
WHERE (Year(ChangeEffDt) = Forms!frmFilter!txtHiddenYear) AND
((E.UWRespName = Forms!frmFilter!txtHiddenUserId
Or IsNull(Forms!frmFilter!txtHiddenUserId) = -1))
AND ((E.DataEntryCompleteFlg=Forms!frmFilter!txtHidden Work Or IsNull(Forms!frmFilter!txtHiddenWork) = -1));
SELECT E.CISCompanyNum, dbo_CISCompany.CISCompanyName, E.UWRespName, Year([ChangeEffDt]) AS ContractYear, s.last_nm & ", " & s.first_nm AS FullName
FROM dbo_CISCompany INNER JOIN (dbo_ERCContractExhibit AS E INNER JOIN dbo_tb_user AS s ON E.UWRespName = s.user_id) ON dbo_CISCompany.CISCompanyNum = E.CISCompanyNum
WHERE (Year(ChangeEffDt) = Forms!frmFilter!txtHiddenYear) AND
((E.UWRespName = Forms!frmFilter!txtHiddenUserId
Or IsNull(Forms!frmFilter!txtHiddenUserId) = -1))
AND ((E.DataEntryCompleteFlg=Forms!frmFilter!txtHidden Work Or IsNull(Forms!frmFilter!txtHiddenWork) = -1));