Re: Jak załadować towar z dokumentu zamówienia.
Mam jeszcze jeden problem - nie wiem jak to ugryźć...
Na dokumencie zamówienia są pozycje - towary i usługi.
W jaki sposób można sprawdzić w jakim stopniu zrealizowana jest pozycja zamówienia.
Np
Na zamówieniu:
-towar1 , 3 szt
-usługa, 2 szt
Do tego wystawiona faktura częściowa na 2 szt. towaru i 1 szt. usługi.
Chciałbym wyświetlić informację o tym że do realizacji jest: towar1 1 szt i usługa 1 szt.
Do tej pory posługiwałem się rezerwacjami, ale usługi nie zakładają rezerwacji. Jest jakiś obiekt który to wyświetla?
Przykładowy kod - brakuje mi tylko tej informacji..
Kod:
while IdDk
nErr = xDZo.Load("id=" + (Using"%l",IdDk))
popup(0,"Trwa wykonanie raportu...")
popup(1,xDzo.numer)
nCount = xDZo.pozycje.count()
for i = 1 to i > nCount
// lp+=1
xPoz = xDZo.pozycje.item(i)
xTw = GetObjByKod("BTowar",xpoz.kod) //Ładowanie objektu towaru - Po nowemu z includa.
if xTw.typ != 3 then
lp+=1
ws.cells(lp+1,1)= lp //liczba porzadkowa OK
ws.cells(lp+1,2)= xDZo.dataWystawienia //Data wystawienia dok ZMO OK
ws.cells(lp+1,3)= xDZo.DaneKh.KhKod //Kod kontrahenta/Wymiennie nazwa :xDZo.DaneKh.KhNazwa OK
ws.cells(lp+1,4)= DrukujWymiary(IdDk,"zo","Temat") // zmienna 3 - nazwa wymiaru
ws.cells(lp+1,5)= xTw.nazwa //Rodzaj - Nazwa towaru OK
ws.cells(lp+1,6)= fsZnaczikTw(xTw.znacznik) //Znacznik towaru
//TUTAJ COŚ TRZENBA========================
message using "%i",xPOz.wlasciwosci.iloscRz
//ws.cells(lp+1,7)= ///fDoRealizacji(IdDk,i) //ilosc z pozycji nie rozliczona - nie wydana.
//============================================
ws.cells(lp+1,8)= xpoz.jednostkaMiary //OK
ws.cells(lp+1,9)= xPoz.wartoscWP //Wartosć pozycji OK
ws.cells(lp+1,10)= xDZo.opis //opis dokumentu ZMO OK
sWaluta = xDZo.waluta
if xDZo.waluta == "" then sWaluta = "PLN"
ws.cells(lp+1,11)= sWaluta //OK
endif
next i
IdDk = GetLineID(SetTaggedPos(NX))
wend
i funkcja której używałem przy rezerwacjach - bez nich nie działa
Kod:
float sub fDoRealizacji(Long IdZo,int iDpoz)
Dispatch xDZMo = xFactory.NewObject("BDokumentZo")
Int nErrZo = xDZMo.Load("id=" + (Using"%l",IdZo))
Dispatch xPozZo, xRez, xDw
int k,l
xPozZo = xDZMo.pozycje.item(iDpoz)
for k=1 to k>xPoz.Wlasciwosci.Rezerwacje.Count()
xRez = xPoz.Wlasciwosci.Rezerwacje.item(k)
if xRez.Typ==2 then
for l=1 to l>xRez.Powiazania.Count()
xDw=xRez.Powiazania.item(l)
fDoRealizacji+=xDw.ilosc
next l
endif
next k
endsub