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

Drukarka fiskalna i dwa komputery
https://forum.mix-soft.pl/viewtopic.php?f=2&t=5112
Strona 1 z 2

Autor:  romen11 [ 2013-08-23, 13:27 ]
Tytuł:  Drukarka fiskalna i dwa komputery

Jak w temacie. Jak używać jednej drukarki fiskalnej z dwóch komputerów na których jest zainstalowany symfonia handel.
Oba są w tej samej sieci lokalnej.

Autor:  wrob [ 2013-08-23, 14:07 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

poszukaj na forum - juz o tym bylo :)

Autor:  rafal [ 2013-08-26, 22:22 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

W raporcie Raporty -> Procedury -> Procedury dokumentu sprzedaży

ZNAJDŹ
Kod:
int Sub OnAfterInsert(long lId)
   OnAfterInsert = SprawdzOkresNumeracji(lId, BAS_DK)
EndSub


ZAMIEŃ NA
Kod:
int Sub OnAfterInsert(long lId)
   
   dispatch fso = "Scripting.FileSystemObject"

   int iPlik

   baseDK dk
   dk.GetRecById( lId )
      
   if dk.GetField("typ_dk") == "PAR" then
      iPlik = open (using "%s%8.8l.fsk",KatalogFirmy(),lId) for output
      print #iPlik;"-"
      close #iPlik
   endif

   OnAfterInsert = SprawdzOkresNumeracji(lId, BAS_DK)
EndSub


W raporcie Raporty -> Procedury -> Procedura OnTimer

ZNAJDŹ
Kod:
int sub OnTimer()
   OnTimer = 0
endsub


ZAMIEŃ NA
Kod:
int sub OnTimer()

   string KomputerFiskalizujacy = "ASUS-PC" // nazwa komputera do, którego podłączona jest drukarka fiskalna
   dispatch nt = "WScript.Network"
   string sPlik, sMaska = KatalogFirmy() + "*.fsk"
   dispatch fso = "Scripting.FileSystemObject"

   if  nt.ComputerName == KomputerFiskalizujacy then
             sPlik = find file ( sMaska )
               while sPlik
                FiskalizujDokument( Val ( fso.GetBaseName(sPlik) )) 
                fso.DeleteFile( sPlik )
               sPlik = find next file
               wend
   endif

   OnTimer = 0
endsub


W ustawieniach dokumentu PAR wyłącz automatyczną fiskalizację

Załącznik:
hmwfisk01.jpg
hmwfisk01.jpg [ 94.66 KiB | Przeglądany 14778 razy ]


W parametrach pracy programu ustaw wykonywanie procedury OnTimer na Tak

Załącznik:
hmwfisk02.jpg
hmwfisk02.jpg [ 102.66 KiB | Przeglądany 14778 razy ]


Na stanowisku do, którego podłączona jest drukarka musi być uruchomiony program Handel i zalogowany jakiś użytkownik.

Autor:  romen11 [ 2013-08-28, 10:22 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

działa. dziękuję za pomoc.

Autor:  Zenek N [ 2020-02-22, 09:49 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Umieszczam działający kod ponieważ poprzednim tylko można problemów narobić, lepiej nie korzystać ponieważ kod fiskalizuje paragony niewydane, czyli jeśli nie mamy towaru na stanie a paragon zostanie wystawiony to skrypt też go zafiskalizuje

Kod wklejamy do Procedury dokumentu magazynowego
Kod:
int Sub OnBeforeInsert(long lId)
   OnBeforeInsert = ZmienKatalogRodzaj(lId)
EndSub

int Sub OnAfterInsert(long lId)
   dispatch fso = "Scripting.FileSystemObject"

   int iPlik

   baseDK dk
   baseMG mg
   dk.GetRecById( lId )



   long lIe = mg.GetField("idhandl")

   mg.GetRecById(lId)
   dk.GetRecById(lIe)
   

    if dk.GetField("typ_dk") == "PAR"  then
   if dk.GetField("id") == mg.GetField("idhandl") then
     iPlik = open (using "%s%8.8l.fsk",KatalogFirmy(),lIe) for output
      print #iPlik;"-"
      close #iPlik
   endif
   endif
   

OnAfterInsert = SprawdzOkresNumeracji(lId, BAS_MG)
EndSub

Autor:  Zenek N [ 2022-12-28, 13:51 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Czy jest ktoś w stanie napisać raport do Symfonii 50C

Autor:  rafal [ 2022-12-28, 14:22 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Zenek N pisze:
Czy jest ktoś w stanie napisać raport do Symfonii 50C


Możesz użyć tego samego.
Nie wiem tylko po co tam jest wplątany dokument magazynowy. Chyba nie ma takiej potrzeby?

Zamiast Katalog() użyj jakiejś ścieżki sieciowej.

Powinno działać

Autor:  Zenek N [ 2022-12-29, 12:29 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Cześć Rafał nie działa to rozwiązanie a ścieżka katalog() jest prawidłowa chyba że pliki .fsk zapisywane są w innym miejscu.

Autor:  rafal [ 2022-12-30, 14:28 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Zenek N pisze:
Cześć Rafał nie działa to rozwiązanie a ścieżka katalog() jest prawidłowa chyba że pliki .fsk zapisywane są w innym miejscu.


Wywala się?
Jest jakiś komunikat?
Plik nie tworzy się w Katalog() ? Lepiej w ERP podać bezpośrednio ścieżkę gdzie mają się tworzyć pliki *.fsk

Autor:  Zenek N [ 2023-01-19, 11:17 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Kod:
PRINT na ekran nie został zaimplementowany

Autor:  Zenek N [ 2023-01-19, 15:19 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Działa, problem jest z prawami dostępu do folderu u mnie działa w ten sposób że utworzyłem c:\par

Kod:
int sub OnTimer()   
   string KomputerFiskalizujacy = "DESKTOP-F07E1S4" // nazwa komputera do, którego podłączona jest drukarka fiskalna
   dispatch nt = "WScript.Network"
   string cat = "C:\\par\\"
   string sPlik, sMaska = cat + "*.fsk"
   dispatch fso = "Scripting.FileSystemObject"
   
   if  nt.ComputerName == KomputerFiskalizujacy then
             sPlik = find file ( sMaska )
               while sPlik
                FiskalizujDokument( Val ( fso.GetBaseName(sPlik) ))
                fso.DeleteFile( sPlik )
               sPlik = find next file
               wend
   endif

   OnTimer = 0
endsub


Kod:
int Sub OnAfterInsert(long lId)
   
   dispatch fso = "Scripting.FileSystemObject"

   int iPlik
   string cat = "C:\\par\\"
   baseDK dk
   dk.GetRecById( lId )

     
   if dk.GetField("typ_dk") == "PAR" then
      iPlik = open (using "%s%8.8l.fsk",cat,lId) for output
      print #iPlik;"-"
      close #iPlik
   endif

   OnAfterInsert = 0
EndSub

Autor:  Zenek N [ 2023-01-20, 09:42 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Miałeś racje Rafał musi być podana ścieżka sieciowa docelowa ip lub alias
Kod:
string cat = "\\\\127.0.1.1\\par\\"


Rafał czy jesteś w stanie dopisać raport aby po metodzie onAfterInsert(long lid) z Procedur płatności wyciągnąć id dokumentu dkid ?
Potrzebuje to ponieważ chcę aby raport fiskalizował dopiero po wystawieniu KP

Autor:  rafal [ 2023-01-20, 10:25 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Nie mam jak przetestować w tym momencie ale to powinno zwrócić dobre dane

Kod:
  SELECT PN1.kod, PN2.kod FROM HM.ROPN
  LEFT JOIN HM.PN PN1 ON PN1.id = ROPN.id1
  LEFT JOIN HM.PN PN2 ON PN2.id = ROPN.id2
  WHERE id1 = lId z OnAfterInsert
  UNION
  SELECT PN1.kod, PN2.kod FROM HM.ROPN
  LEFT JOIN HM.PN PN1 ON PN1.id = ROPN.id1
  LEFT JOIN HM.PN PN2 ON PN2.id = ROPN.id2
  WHERE id2 = lId z OnAfterInsert


Pamiętaj że rozliczenie może dotyczyć kilku dokumentów i wywołane z innego miejsca może zwrócić wiele rekordów.

Autor:  Zenek N [ 2023-01-20, 13:28 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

jako ciekawostka dla HANDLU 50C 2023 nie działają metody i raporty dla procedur płatności podczas wystawiania dokumentu sprzedaży jeśli wystawianie KP jest wybrane w tryb automatyczny dla trybu półautomatycznego i ręcznego wszystkie metody z procedur płatności już działają podczas wystawiania dokumentu sprzedaży. Pewnie kolejny bug programistów symfonii


Obrazek

Autor:  Zenek N [ 2023-05-19, 10:33 ]
Tytuł:  Re: Drukarka fiskalna i dwa komputery

Od wczoraj zrobił się problem, Symfonia mieli onTimer i po chwili wyłącza się program, dysk jest pusty jak usunę raport z OnTimer to Symfonia działa normalnie ale aby dostać się do OnTimer muszę odłączyć najpierw router wtedy symfonia działa nawet jak w OnTimer jest raport - warunek router musi być wyłączony

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