Posty bez odpowiedzi |oraz Aktywne tematy Dzisiaj jest 2024-11-25, 16:08x



Odpowiedz w temacie  [ Posty: 2 ] 
cena nie wstawia się ior 
Autor Wiadomość

Rejestracja: 2012-10-29, 20:13
Posty: 40
Post cena nie wstawia się ior
xBIORec.BeginSection("Pozycja dokumentu")
xBIORec.SetField("opis","usługa rozrywkowa")
xBIORec.SetField("ilosc","2")
xBIORec.SetField("jednostkaMiary","godz.")
xBIORec.SetField("cena","75")
xBIORec.EndSection()

WystawDokumentMagazynowy(id,1)

Używam standardowej operacji. Z dokumentami PW jest wszystko ok, a dla WZ nie wstawia się cena. Dopiero po tym jak nie ma stanu i dokument się importuje do bufora to cena się pojawia. Jeśli jest stan i dokument od razu się wystawia to ceny nie ma. HELP!!

FORTE 2011.b

Kod:
#include "MES Config include"





//Deklaracje zmiennych
Dispatch MES_Communication
Dispatch SDO
Dispatch SDOItem
Dispatch SDOFiles
int filesCounter
int positionsCounter
//dokument
string typ = ""
string seria = ""
string dataWystawienia = ""
string dataOperacji = ""
string magazyn = ""
string kontrahent = ""
string kodPozycji = ""
string ilosc = ""
string jm = ""
string nazwaDostawy = ""
long id
string path = ""
string opis = ""
string zamowienie = ""
string querySQL2
string qsql2
dispatch rs2 = "ADODB.Recordset"
dispatch con2 = GetAdoConnection()
string twnazwa, cenaPozDok

string zamkod = ""

string filePath = ""
string backupFilePath = ""

IOrec ior

dispatch con = GetAdoConnection()
dispatch rs = "ADODB.Recordset"
string querySQL
string qsql
float przelicznik
float iloscc
float iloscf

float przelicznik2

string tona
string jm1
string importFol = "E:\\oracle\\oradata\\QPROD\\utl_file_dir_QPROD\\exp"

MES_Communication.Create("MES_Communication.TransferFiles")
SDOFiles = MES_Communication.Method("GetFiles",importFol)

For filesCounter = 0 To filesCounter > SDOFiles.Count - 1
   filePath = MES_Communication.Method("GetFile",SDOFiles,filesCounter)
   SDO = MES_Communication.Method("ImportSDO",filePath)
   
   typ = SDO.SdoDocument.DOC_TYPE_NR
   magazyn = SDO.SdoDocument.WH_NR
   
   if magazyn != "P01" Then
      if typ == "WZ" then seria = seriaWZ   
      if typ == "PZ" then seria = seriaPZ
      if typ == "RW" then seria = seriaRW
      if typ == "PW" then seria = seriaPW
      if typ == "MRW" then
         seria = seriaRW
         typ = "RW"
      endif
      if typ == "MPW" then
         seria = seriaPW
         typ = "PW"
      endif
      if typ == "MM+" then seria = seriaMMplus
      if typ == "MM-" then seria = seriaMMminus
      if typ == "IW-" then
         seria = seriaINminus   
         typ = "IN-"
         
      endif
      if typ == "IW+" then
         seria = seriaINplus   
         typ = "IN+"
      
         
      endif
      dataWystawienia = SDO.SdoDocument.DATE_EMITTED
      dataOperacji = SDO.SdoDocument.DATE_EMITTED   
      kontrahent = SDO.SdoDocument.CUSTOMER_NR
      opis = SDO.SdoDocument.DOC_NR
      
      //if zamowienie != "0"   then
         //ior.SetField("odebranyPrzez", zamowienie)
   //   endif
      

   
      //IOrec
      ior.SetField("typDK", typ)
      ior.SetField("seria", seria)
      
      //rezerwacja
      //0 - brak
      //1 - ilościowa
      //2 - ze wskazaniem dostawy
      ior.SetField("rezerwacja", "1")
      ior.SetField("dataWystawienia", dataWystawienia)
      ior.SetField("dataOperacji", dataOperacji)

         
      ior.SetField("opis", opis)
      //magazyn
      ior.SetField("dzial", magazyn)
      //kontrahent (dla dokumentów MM w polu kontrahent jest przesyłany magazyn przyjmujący)
      ior.BeginSection("DaneKh")
      ior.SetField("KhKod", kontrahent)
      ior.EndSection()



   
      
      //Pozycje
      For positionsCounter = 0 To positionsCounter > SDO.SdoDocument.Items.Count - 1
         SDOItem = MES_Communication.Method("GetItem",SDO,positionsCounter)
         kodPozycji = SDOItem.PRODUCT_NR


   
         zamowienie = SDO.SdoDocument.C_ORDER_NR
querySQL = "select przeljmdod1 as przelicznik1,jmdod1 as tona1,jm as jednostkam,* from dbo.tw where tw.kod="
qsql = using "%s'%s'",querySQL,kodPozycji







         ilosc = Using "%f", SDOItem.QUANTITY

   
if rs.State == 1 then rs.Close()

rs.Open(qsql, con, 3)

if rs.eof then
   //message "Eksport został zatrzymany, nie ma takiego towaru w FORTE"
   goto konieczadania
endif

  rs.MoveFirst()
// while !rs.EOF
   
   //message "nie ma nic"
//else
      jm1 = rs.Fields("jednostkam").Value
      przelicznik = rs.Fields("przelicznik1").Value

      

      tona = rs.Fields("tona1").Value
      if tona == "T" then
         przelicznik = 1.0
      endif

      
   
      if przelicznik == 0.0 then
      przelicznik = 1.0
      endif

      
      if jm1 == "szt" then
      przelicznik = 1.0
      endif
      
      

/*
   if typ == "IN+" then
          przelicznik = 1.0
      endif
      if typ == "WZ" then
      przelicznik = 1.0
      endif

*/
      

      

//wend
//message using "%f", przelicznik
iloscf = val(ilosc)

//przelicznik2 = using "%f", przelicznik
iloscc = przelicznik*iloscf





ilosc = Using "%f", iloscc


konieczadania:

//message using "%f", iloscc
         ior.BeginSection("Pozycja dokumentu")
      
         ior.SetField("kod",kodPozycji)

      //

querySQL2 = "select nazwa as twnazwa, cn.waluta as walutaPozDok, cn.cena as cenaPozDok, kod from dbo.tw join dbo.cn on cn.idpm=tw.id where cn.aktywna=1 and cn.typ=8 and tw.kod="   
//querySQL2 = "select nazwa as twnazwa, kod from dbo.tw where tw.kod="
qsql2 = using "%s'%s'",querySQL2,kodPozycji



if rs2.State == 1 then rs2.Close()

rs2.Open(qsql2, con2, 3)

if rs2.eof then
   goto konieczadania2
endif
  rs2.MoveFirst()

      
      twnazwa = rs2.Fields("twnazwa").Value
         zamkod = using "%s, %s", twnazwa,zamowienie
      cenaPozDok = using "%f", rs2.Fields("cenaPozDok").Value
      //message cenapozdok
      //   message using "%f", cenaPozDok
   
      //   cenaBazowaPozDok = using "%s",          
   
           ior.SetField("opis",zamkod)
         ior.SetField("ilosc_ewid", ilosc)
         ior.SetField("jednostkaMiary", SDOItem.MU_CODE)
      
         //cenapozdok = "6"
         //cenapozdok = kwotanatekst(cenapozdok)
         ior.SetField("cena",  cenapozdok)
         //ior.SetField("waluta", rs2.Fields("walutaPozDok").Value)
         
         //Nazwa dostawy wykorzystywana do dokumentów przyjęcia zewnętrznego (PZ)
         If SDO.SdoDocument.DOC_TYPE_NR == "PZ" Then ior.SetField("nazwaDostawy", SDO.SdoDocument.DOC_NR)
         If SDO.SdoDocument.DOC_TYPE_NR == "RW" Then
            //Podsekcja dostaw dokumentów (wykorzystywana dla dokumentów RW)
            //ior.BeginSection("Dostawa")
            //ior.SetField("ilosc", ilosc)
            //ior.SetField("nazwa_dostawy", nazwaDostawy)
            //ior.EndSection()
         EndIf
         ior.EndSection()
      Next positionsCounter
      //zapis do bufora
      id = ImportMG(ior)
      if id == 0 then error "Import dokumentu do bufora nie powiódł się"
      //wystawienie dokumentu
      WystawDokumentMagazynowy(id,1)
      //Wyczyszczenie obiektu
      ior.Clear()
      //Backup pliku
   endif
   backupFilePath = "E:\\oracle\\oradata\\QPROD\\utl_file_dir_QPROD\\arc" + "\\" + MES_Communication.Method("GetFileName",filePath)
   
//message using "%s", backupFilePath
   MES_Communication.Method("BackupFile",filePath,backupFilePath)
Next filesCounter

konieczadania2:


2013-12-20, 13:47
Wyświetl profil
Autor Wiadomość
 


Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 4000
Pomógł: 448
Post Re: cena nie wstawia się ior
Na WZ nie można zmieniać ceny/wartości pozycji.
Wydanie odbywa się w wartości magazynu.

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

tel. 22 7 538 538
ekspert@mojaSymfonia.pl
http://www.mojaSymfonia.pl


2013-12-20, 15:21
Wyświetl profil
Wyświetl posty nie starsze niż:  Sortuj wg  
Odpowiedz w temacie   [ Posty: 2 ] 
   Podobne tematy   Autor   Odpowiedzi   Odsłony   Ostatni post 
Na tym forum nie ma nowych nieprzeczytanych postów. Wystawienie a VSB dokumentu PW - nie uaktualnia się cena zak

w Programowanie

KrzysztofK

0

10330

2016-06-01, 11:04

KrzysztofK Wyświetl najnowszy post

Na tym forum nie ma nowych nieprzeczytanych postów. importuj(ior)

w Programowanie

supersebek

2

2076

2014-01-08, 10:28

supersebek Wyświetl najnowszy post

Na tym forum nie ma nowych nieprzeczytanych postów. uzgadnianie towarów, ior

w Programowanie

supersebek

4

2561

2014-04-01, 00:39

wrob Wyświetl najnowszy post

Na tym forum nie ma nowych nieprzeczytanych postów. Cena A na dokumencie MM

w Programy Handlowe

mellos

3

3398

2011-11-01, 19:06

wrob Wyświetl najnowszy post



Kto jest online

Użytkownicy przeglądający to forum: Nie ma żadnego zarejestrowanego użytkownika i 21 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Support forum phpbb by phpBB Assistant