mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
Jak załadować towar z dokumentu zamówienia. https://forum.mix-soft.pl/viewtopic.php?f=15&t=9418 |
Strona 1 z 1 |
Autor: | wojtek [ 2020-02-02, 12:15 ] |
Tytuł: | Jak załadować towar z dokumentu zamówienia. |
Witam, Dawno pisałem raport do starego FORTE. Teraz ten kod działa tylko częściowo - nie mogę pobrać danych towaru po kodzie... jak to zrobić? Kod: Long IdDk =GetLineID(SetTaggedPos(FS)) Dispatch xDZo = xFactory.NewObject("BDokumentZo") Int nErr = xDZo.Load("id=" + (Using"%l",IdDk)) Dispatch xTw = xFactory.NewObject("BTowar") Dispatch xPoz, xRez, xDw Dispatch excel Dispatch wb Dispatch ws excel.Create("excel.Application") wb = excel.Workbooks.Add ws = wb.Worksheets.Add excel.Range("b:b").numberformat = "@" int nCount,i,lp int errorek lp=0 while IdDk nErr = xDZo.Load("id=" + (Using"%l",IdDk)) lp+=1 nCount = xDZo.pozycje.count() for i = 1 to i > nCount xPoz = xDZo.pozycje.item(i) errorek = xTw.load("kod="+xpoz.kod) message using "%l",errorek //tutaj dostaje błąd 771 next i IdDk = GetLineID(SetTaggedPos(NX)) wend |
Autor: | rafal [ 2020-02-02, 15:16 ] |
Tytuł: | Re: Jak załadować towar z dokumentu zamówienia. |
A kod nie powinien być w ciapkach? Kod: errorek = xTw.load((using "kod='%s'",xpoz.kod)) |
Autor: | wojtek [ 2020-02-02, 18:35 ] |
Tytuł: | Re: Jak załadować towar z dokumentu zamówienia. |
Spróbuje, poradziłem sobie w inny sposób: #include "Obiekty - include" xTw = GetObjByKod("BTowar",xpoz.kod) ten sposób zadzałał. |
Autor: | wojtek [ 2020-02-02, 22:23 ] |
Tytuł: | 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 |
Autor: | rafal [ 2020-02-03, 01:33 ] |
Tytuł: | Re: Jak załadować towar z dokumentu zamówienia. |
Przez obiekty nie wiem ale w bazie to kolejno w tabelach ZO ZP OP RO OP |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |