1=GetSQL('select Knt_EFaVatAktywne
FROM cdn.TraNag INNER JOIN cdn.KntKarty ON (TrN_KntTyp=Knt_GIDTyp) AND (TrN_KntNumer=Knt_GIDNumer)
where (Knt_EFaVatAktywne=1) AND ' & FiltrSql) <> 1
potrzebuję to uzbroić w dodatkową blokadę na użytkownika aby wyciągnął fakturę z bufora przed wydrukiem.
Może by się dało zrobić limit, np. jeśli dany operator ma wystawione 5 faktur które są w buforze to na szóstej nie ma wydruku i musi wcześniejszy dokument potwierdzi.
Proszę o pomoc lub podpowiedzi.
No to w takim razie powinieneś napisać funkcję, do której wrzucać będziesz id operator i typ dokumentu, a ta będzie ci zwracać ilość dokumentów w buforze dla tego operatora.
Wówczas wynik tej funkcji dodajesz do warunku i będziesz miał limit.
1=GetSQL('select Knt_EFaVatAktywne
FROM cdn.TraNag INNER JOIN cdn.KntKarty ON (TrN_KntTyp=Knt_GIDTyp) AND (TrN_KntNumer=Knt_GIDNumer)
where (Knt_EFaVatAktywne=1) AND ' & FiltrSql) <> 1
(SELECT sum(TrN_Stan),CASE WHEN sum(TrN_Stan)>10 THEN 1 ELSE 0 END
FROM CDN.TraNag
INNER JOIN CDN.OpeKarty ON ((TrN_OpeTypW=Ope_GIDTyp) AND (TrN_OpeNumerW=Ope_GIDNumer))
WHERE TrN_Stan<3 AND Ope_GIDNumer=7 AND TrN_GIDTyp=2033)
GetSQL('select Knt_EFaVatAktywne
FROM cdn.TraNag
INNER JOIN cdn.KntKarty ON (TrN_KntTyp=Knt_GIDTyp) AND (TrN_KntNumer=Knt_GIDNumer)
where Knt_EFaVatAktywne=1 AND '& FiltrSQL) = 1
AND
GetSQL('SELECT 1
FROM CDN.TraNag
INNER JOIN CDN.OpeKarty ON ((TrN_OpeTypW=Ope_GIDTyp) AND (TrN_OpeNumerW=Ope_GIDNumer))
WHERE TrN_Stan < 3 AND Ope_GIDNumer = '&OperatorGIDNumer&' AND TrN_GIDTyp = 2033
HAVING COUNT(TrN_Stan) > 0 AND COUNT(TrN_Stan) < 10') = 1
Dziękuję, działa.
Możesz jeszcze podpowiedzieć jak odwołać się do dzisiejszej daty bo chciałbym dać warunek jeśli dokumenty z dnia wczorajszego jest niepotwierdzony to żeby nie pozwolił zrobić wydruku.