mojaSymfonia FORUM
https://forum.mix-soft.pl/

Dodanie kolejnej pozycji w dokumencie (InfoDok)
https://forum.mix-soft.pl/viewtopic.php?f=15&t=6825
Strona 1 z 1

Autor:  WojtekM [ 2015-09-06, 02:14 ]
Tytuł:  Dodanie kolejnej pozycji w dokumencie (InfoDok)

Witam,
mam następujący problem:
chciałbym dodać w jednym dokumencie (wyciąg bankowy) dwa i więcej zapisów.
Z jednym zapisem nie ma problemu, ale jak dodaję drugi to coś się kopie jak na załączonym obrazku.
Jak widać: druga pozycja została dodana jako część tej pierwszej(?) co powoduje brak opisu dla niej a w dodatku jest rozbita na dwie niezależne pozycje.
Proszę o informację co jest przyczyną tego błędu? Próbowałem różnych kombinacji z begin/next ale to nic nie pomagało :-/.

Z góry dziękuję za pomoc.

Kod, który posiadam jest następujący:
Kod:
InfoDok dok

dok.bDok = Open KatalogRoku() + "09dok_b.dat" For base "buf_dokum"
BaseError(KatalogRoku() + "07dok_b.dat", 4)
dok.bZap = Open KatalogRoku() + "08zap_b.dat" For base "buf_zapisy"
BaseError(KatalogRoku() + "08zap_b.dat", 4)
dok.bKsie = Open KatalogRoku()  + "09dok_b.dat" For base "buf_dokum"
dok.bRej  = Open KatalogFirmy() + "11vat_B.dat" For base "buf_rejVat"


dok.begin(1)
dok.SetField(0, "skrot", "WB")
dok.SetField(0, "nazwa", "DP/2015/08")
dok.SetField(0, "tresc", "Treść dokumentu")
dok.SetField(0, "datawpr", "2015-08-11")
dok.SetField(0, "datadok", "2015-08-11")
dok.SetField(0, "dataOper", "2015-08-11")
dok.SetField(0, "kwota", 1001.00)
dok.Insert(1)


dok.SetField(1, "opis", "bla bla")
dok.SetField(1, "kwota", 1002)
dok.SetField(1, "strona", 0)
dok.SetField(1, "synt", 100)
dok.Insert(1)

dok.next(1)
dok.SetField(1, "kwota", 1002)
dok.SetField(1, "strona", 1)
dok.SetField(1, "synt", 200)

//---------------------

dok.Insert(1)
dok.SetField(1, "opis", "xxx")
dok.SetField(1, "kwota", 1001)
dok.SetField(1, "strona", 0)
dok.SetField(1, "synt", 100)

dok.Insert(1)
dok.next(1)
dok.SetField(1, "kwota", 1001)
dok.SetField(1, "strona", 1)
dok.SetField(1, "synt", 200)

dok.InsRec()


Załączniki:
zapis w symfoni.png
zapis w symfoni.png [ 20.13 KiB | Przeglądany 2999 razy ]

Autor:  rafal [ 2015-09-07, 11:17 ]
Tytuł:  Re: Dodanie kolejnej pozycji w dokumencie (InfoDok)

Może trzeba ustawiać pole pozycja. Sprawdź.

Kod:
InfoDok dok

dok.bDok = Open KatalogRoku() + "09dok_b.dat" For base "buf_dokum"
BaseError(KatalogRoku() + "07dok_b.dat", 4)
dok.bZap = Open KatalogRoku() + "08zap_b.dat" For base "buf_zapisy"
BaseError(KatalogRoku() + "08zap_b.dat", 4)
dok.bKsie = Open KatalogRoku()  + "09dok_b.dat" For base "buf_dokum"
dok.bRej  = Open KatalogFirmy() + "11vat_B.dat" For base "buf_rejVat"


dok.begin(1)
dok.SetField(0, "skrot", "WB")
dok.SetField(0, "nazwa", "DP/2015/08")
dok.SetField(0, "tresc", "Treść dokumentu")
dok.SetField(0, "datawpr", "2015-08-11")
dok.SetField(0, "datadok", "2015-08-11")
dok.SetField(0, "dataOper", "2015-08-11")
dok.SetField(0, "kwota", 1001.00)
dok.Insert(1)


dok.SetField(1, "opis", "bla bla")
dok.SetField(1, "kwota", 1002)
dok.SetField(1, "strona", 0)
dok.SetField(1, "synt", 100)
dok.SetField(1, "pozycja", 0)
dok.Insert(1)

dok.next(1)
dok.SetField(1, "kwota", 1002)
dok.SetField(1, "strona", 1)
dok.SetField(1, "synt", 200)
dok.SetField(1, "pozycja", 0)

//---------------------

dok.Insert(1)
dok.SetField(1, "opis", "xxx")
dok.SetField(1, "kwota", 1001)
dok.SetField(1, "strona", 0)
dok.SetField(1, "synt", 100)
dok.SetField(1, "pozycja", 1)

dok.Insert(1)
dok.next(1)
dok.SetField(1, "kwota", 1001)
dok.SetField(1, "strona", 1)
dok.SetField(1, "synt", 200)
dok.SetField(1, "pozycja", 1)

dok.InsRec()

Autor:  WojtekM [ 2015-09-07, 22:37 ]
Tytuł:  Re: Dodanie kolejnej pozycji w dokumencie (InfoDok)

Dzięki wielkie!!! Już jest jak należy :-)
pozdrawiam

Strona 1 z 1 Strefa czasowa UTC+1godz. [letni]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/