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

Kolejka FIFO HMF 2010
https://forum.mix-soft.pl/viewtopic.php?f=15&t=2591
Strona 1 z 1

Autor:  wars1977 [ 2010-12-22, 09:47 ]
Tytuł:  Kolejka FIFO HMF 2010

Witam.

czy jest możliwe wyłączenie kolejki FIFO bądź LIFO , tak aby podczas wydawania z magazynu w innej kolejności niż przyjęcia Symfonia nie dzieliła sobie dostaw ??

Pozdrawiam.

Autor:  krzysiek [ 2010-12-22, 10:01 ]
Tytuł: 

Można wydawać używając nie rezerwacji ilościowej (czyli fifo, lifo) lecz "ze wskazaniem dostawy" tylko wówczas trzeba wskazywać każdą dostawę ręcznie.

Autor:  wars1977 [ 2010-12-22, 11:11 ]
Tytuł: 

Dokładnie tak, ale jest problem.

nawet gdy wybiore opcje "ze wskazaniem dostawy" i tak dzieli dostawy.

Za pomocą BIORec'a zakładam dokument przyjecia magazynowego i dodaje pozycje dokumentu wraz z nazwą dostawy. Oczywiście sposob rozliczania dostaw jest ustawiony na "ze wskazaniem dostawy". Jak wydam z magazynu towar w kolejnosci dostaw tak jak zostal przyjety to jest wszystko ok, lecz jak wydam odwrotnie , czyli np. ostatni przyjety na magazyn wydam jako pierwszy to zaczynaja sie jaja. Zaczyna brac ilosci z innych dostwa (tych przyjetych jako pierwsze) i w efekcie bywa tak ,ze mam na dokumecie wydania przy pozycji dwie dostawy.

Mozna to jakos rozwiazac?

Autor:  krzysiek [ 2010-12-22, 11:17 ]
Tytuł: 

ale nie wystarczy wybrać "ze wskazaniem dostaw" trzeba jeszcze dostawy wybrać. Bez wybrania konkretnej dostawy system mimo ustawienia tej opcji nadal będzie działał wg fifo

Autor:  wars1977 [ 2010-12-22, 11:26 ]
Tytuł: 

Dokłądnie tak, ale jak to zrobić??.

Kod wyrobu, ilośc i nazwe dopstawy zczytuję czytnikiem z przywieszki paletowej.
W AmBasicu zrobiłem skrypt który tworzy dokument wydania , dodaje pozycje , a we właściwościach pozycji wpisuje nazwe dostawy.

Jak mam zaznaczyć właściwą dostawę z poziomu AmBasic'a ??

Na tym screenia pokazałem o co mi chodzi:
http://img146.imageshack.us/i/neta.jpg/

Pozdrawiam.

Autor:  wars1977 [ 2010-12-22, 12:54 ]
Tytuł: 

Mam prośbę , czy kolega Krzysiek mógł by pomóc podpowiedzieć mi jak wybrać z pozuimu AmBasic'a dostawę o konkretnej nazwie ?.

Sprawa jest b.pilna!

Pozdrawiam.

Autor:  krzysiek [ 2010-12-22, 13:00 ]
Tytuł: 

bardzo pilne to teraz są aktualizacje systemów :) a poza tym ja nie jestem programistą co nie oznacza, że może jakiś programista tu na forum ci PILNIE odpowie...

Autor:  Misiek [ 2010-12-22, 17:24 ]
Tytuł: 

krzysiek pisze:
bardzo pilne to teraz są aktualizacje systemów :) a poza tym ja nie jestem programistą co nie oznacza, że może jakiś programista tu na forum ci PILNIE odpowie...


Jeden programers się znalazł :-) który sięgnął do ogólnie dostępnej dokumentacji w katalogu programu (podkatalog: Dokumentacja, plik: AMHMSQL-Import_specjalny.rtf)

Podsekcja dostaw sekcji pozycji dokumentu sprzedaży

Nazwa sekcji: Dostawa

Sekcja służy do wyspecyfikowania konkretnych dostaw w przypadku gdy pozycja będzie rezerwowała towar ze wskazaniem dostaw. Nie ma konieczności ustawiania rezerwacji ze wskazaniem dostaw w sekcji dokumentu wystarczy że pojawi się sekcja ‘Dostawa’ w pozycji aby została utworzona rezerwacja. W celu zidentyfikowania dostawy podaje się pole ‘nazwa_dostawy’ lub ‘id_dostawy’. Nie ma konieczności podawania obydwu pól jednocześnie. W przypadku korekt sekcja ‘Dostawa’ ma zastosowanie dla nowoutworzonych pozycji.

Nazwa pola - Opis
Ilość - Ilość podawana w jednostce ewidencyjnej
nazwa_dostawy - Nazwa dostawy
id_dostawy - Identyfikator dostawy

Pozostaje zmodyfikować kod skryptu/raportu/rozwiązania i przetestować :-)

Autor:  wars1977 [ 2010-12-22, 20:50 ]
Tytuł: 

Dziękuję bardzo :).
Wiem o podsekcji "dostawa" i ją stosuję :) , jednak nie ma to wpływu na zachowanie HMF.

Kod wygląda tak

Kod:
// zapisujemy nowa zeskanowana pozycje do dokumentu       
       nErr = xDk.Load(using "id=%d", idMG)
       PokazBledy("")               
   
       xBIORec.SetField("id", Using "%d", xDk.id)
 
       xBIORec.BeginSection("Pozycja dokumentu")
             xBIORec.SetField("kod", Wyrob(IleWyrobow - 1).kod)
             xBIORec.SetField("ilosc", using "%d", Wyrob(IleWyrobow - 1).ilosc(1))
             xBIORec.BeginSection("Dostawa")
                          xBIORec.SetField("nazwaDostawy", Wyrob(IleWyrobow - 1).paleta(1))
                          xBIORec.SetField("ilosc", using "%d", Wyrob(IleWyrobow - 1).ilosc(1))
             xBIORec.EndSection()
       xBIORec.EndSection()

       nErr = xFunkcja.EditMg(xBIORec)
       xBIORec.Clear()       
       PokazBledy("")   



Co prawda mam inna nazwe pola niz kolega "Misiek" podal, ale blędów nie miałem przy uruchamianiu skryptu.
Prztestuję z inna nazwa pola jutro w pracy, w domu nie mam mozliwosci tego sprawdzic.

Pozdrawiam i dam jutro z rana odpowiedz czy cos ruszylo.

Autor:  wars1977 [ 2010-12-23, 08:34 ]
Tytuł: 

Witam , zrobilem testy.

Jezeli zastosuje nazwe pola "nazwa_dostawy" w podsekcji "dostawa" to wówczas nie doda sie zadna pozycja do dokumentu, dokument pozostaje pusty.

przykład:

Kod:
       xBIORec.BeginSection("Pozycja dokumentu")
              xBIORec.SetField("kod", Wyrob(IleWyrobow - 1).kod)
              xBIORec.SetField("ilosc", using "%d", Wyrob(IleWyrobow - 1).ilosc(1))
         //  xBIORec.SetField("nazwaDostawy", Wyrob(IleWyrobow - 1).paleta(1))

             xBIORec.BeginSection("Dostawa")
                       xBIORec.SetField("ilosc", using "%d", Wyrob(IleWyrobow - 1).ilosc(1))
                     xBIORec.SetField("nazwa_dostawy", Wyrob(IleWyrobow - 1).paleta(1))
              xBIORec.EndSection()
       xBIORec.EndSection()


Jezeli w podsekcji dostawa zastosuje nazwe pola "nazwadostawy" wowczas pozycje dodaja sie do dokumentu ,ale niestety jezeli wstawie je w odwrotnej kolejnosci niz towar byl przyjety do magazynu to starym zwyczajem dzieli dostawy.

przykład:

Kod:
       xBIORec.BeginSection("Pozycja dokumentu")
              xBIORec.SetField("kod", Wyrob(IleWyrobow - 1).kod)
              xBIORec.SetField("ilosc", using "%d", Wyrob(IleWyrobow - 1).ilosc(1))
         //  xBIORec.SetField("nazwaDostawy", Wyrob(IleWyrobow - 1).paleta(1))

             xBIORec.BeginSection("Dostawa")
                       xBIORec.SetField("ilosc", using "%d", Wyrob(IleWyrobow - 1).ilosc(1))
                     xBIORec.SetField("nazwaDostawy", Wyrob(IleWyrobow - 1).paleta(1))
              xBIORec.EndSection()
       xBIORec.EndSection()


Czy ktos ma jeszcze jakies pomysly ?

Autor:  wars1977 [ 2011-01-03, 09:30 ]
Tytuł: 

Nikt nie potrafi jeszcze czegoś doradzić ?

Autor:  krzysiek [ 2011-01-03, 09:52 ]
Tytuł: 

spójrz na date i pomyśl czy ktoś ma teraz na to czas.

Autor:  wars1977 [ 2011-01-03, 12:21 ]
Tytuł: 

Ludzi jest wielu i robią różne żeczy, dla jednych 3 stycznia oznacza masę pracy dla innych oznacza dokładnie 3 stycznia.

Poprostu pytam, jak kolega Krzysiek może pomóc , to proszę o pomoc.

Tutaj jest więcej wyjaśnione apropos mojego problemu: http://forum.mojasymfonia.pl/viewtopic.php?t=2583

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