API - ZS - dodanie zamówienia sprzedaży + pozycje

Zapytania SQL, widoki, Crystal, definicje filtrów, szybkich raportów, wydruków, API, Hydra, .NET

Moderator: mikey

john_doe
Posty: 649
Rejestracja: 26 maja 2008, 22:15
Rola: Inny

API - ZS - dodanie zamówienia sprzedaży + pozycje

Post autor: john_doe »

Witam,

pracuję na prostym skryptem w VB aby prosto z Excela można było tworzyć ZS wraz z pozycjami z tego excela

w arkuszu jest tabelka LP | EAN | ILOSC

i taki skrypt

Kod: Zaznacz cały

Sub insert_position()

    Dim licznik As Integer
    Dim licznik_to As Integer
    
    licznik_to = InputBox("Podaj ilość pozycji")
    
    For licznik = 13 To licznik_to
    
        Dim DokumentZamElemInfo As XLDokumentZamElemInfo_18
            
        
        With DokumentZamElemInfo
        
         .Wersja = Range("D3").Value
         .Ilosc = Str(Range("C" & licznik).Value) + Chr(0)
         .TowarEAN = Range("B" & licznik).Value + Chr(0)
         
        End With
    
        Wynik = 0
        Wynik = XLDodajPozycjeZam_18(Range("B8").Value, DokumentZamElemInfo)
        Range("D" & licznik).Value = Wynik
        
    Next licznik

End Sub
narazie roboczo tak aby doprowadzić to do prawidłowego działania. Niby działa ale nie do końca bo dodaje ten sam towar ale z dobrymi ilościami.
Gdy debuguję tą funkcję pod .TowarEAN mam dobry EAN. A jak wchodzę na stworzone ZS to mam np. 5 razy ten sam kod.

Co ja tu robię źle?

pozdrawiam

Awatar użytkownika
pores
Posty: 254
Rejestracja: 14 lip 2008, 13:53
Rola: Inny
Wersja: 2023
Kontakt:

Re: API - ZS - dodanie zamówienia sprzedaży + pozycje

Post autor: pores »

Nie jest wykluczone, ze twój błąd polega na zbytnim zaufaniu w to, że API zadziała zawsze tak jakby to logika podpowiadała.
Logika podpowiada, że skoro podajemy EAN to API ma już dość informacji aby wiedzieć o jaki towar chodzi.
Dla próby podaj obok/zamiast EANu kod towaru.
Prawdopodobnie czeka cię "wyselektowanie" z bazy odpowiedniego kodu towaru na podstawie EANu dla każdej pozycji.
pozdrawiam

stefan poręba
http://www.dobrafarma.pl

JakubK
Posty: 76
Rejestracja: 09 lis 2009, 12:22
Rola: Administrator CDN XL

Re: API - ZS - dodanie zamówienia sprzedaży + pozycje

Post autor: JakubK »

Witam

U mnie takie dodawanie po EAN'ach dziala od wielu miesięcy i nie ma żadnych problemów.

Jedyne co mam inaczej rozwiązane to zawartość pętli jest w osobnej funkcji lub procedurze.

john_doe
Posty: 649
Rejestracja: 26 maja 2008, 22:15
Rola: Inny

Re: API - ZS - dodanie zamówienia sprzedaży + pozycje

Post autor: john_doe »

po przerobieniu na funkcję skrypt poprawnie tworzy i zaczytuje pozycje.

dzięki

m.bozenski
Posty: 99
Rejestracja: 06 wrz 2009, 15:17
Rola: Administrator CDN XL
Wersja: 10

Re: API - ZS - dodanie zamówienia sprzedaży + pozycje

Post autor: m.bozenski »

a ja przy okazji posiadając taki sam błąd (czyli dodawanie kilku tych samych pozycji na zamówieniu), mam pytanie: w jaki sposób przerobiłeś to na funkcję?

john_doe
Posty: 649
Rejestracja: 26 maja 2008, 22:15
Rola: Inny

Re: API - ZS - dodanie zamówienia sprzedaży + pozycje

Post autor: john_doe »

możesz zmodyfikować o arg. licznik w sensie aby go nie było - na moje potrzeby :)

Kod: Zaznacz cały

Function insert_position_fkn(iloscZam, ean, licznik)
    
    Dim DokumentZamElemInfo As XLDokumentZamElemInfo_18
    
    With DokumentZamElemInfo
        
         .Wersja = Range("D3").Value
         .Ilosc = iloscZam
         .TowarEAN = ean
         
    End With
    
    wynik = 0
    wynik = XLDodajPozycjeZam_18(Range("B8").Value, DokumentZamElemInfo)
    If (wynik = 0) Then Range("D" & licznik).Value = "Ok"
        
End Function

ODPOWIEDZ