Strona 1 z 1

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

: 18 kwie 2012, 16:42
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

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

: 18 kwie 2012, 19:58
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.

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

: 18 kwie 2012, 20:23
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.

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

: 20 kwie 2012, 11:29
autor: john_doe
po przerobieniu na funkcję skrypt poprawnie tworzy i zaczytuje pozycje.

dzięki

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

: 05 cze 2012, 19:01
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ę?

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

: 06 cze 2012, 09:03
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