mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
HMP2008 - funkcja z okna kartoteki dokumentow sprzedazy https://forum.mix-soft.pl/viewtopic.php?f=15&t=100 |
Strona 1 z 1 |
Autor: | sebapr [ 2008-04-18, 16:26 ] |
Tytuł: | HMP2008 - funkcja z okna kartoteki dokumentow sprzedazy |
Witam Czy wiecie moze czy mozna w jakis sposob wywolac funkcje ambasic z poziomu okna w ktorym jest lista dokumentow sprzedazy? Zaznaczam jakis dokument lub kilka i chcialbym wywolac funkcje ktora wykona operacje zwiazane z tymi dokuemntami. Chodzi o to zeby funkcja byla latwo dostepna - jakas dodatkowa pozycja gdzies w menu, ewentualnie klawisz skrotu (tak jak to jest z procedurami na samym dokumencie). Sebastian |
Autor: | darek.007 [ 2008-04-18, 22:33 ] |
Tytuł: | |
Pod prawym klawiszem nie wystarczy? + skrót klawiaturowy Trudno o coś lepszego Raporty → Kartoteki → Raporty z menu → Sprzedaż Wrzuc tu coś i kliknij prawy klawisz w kartotece dok.... |
Autor: | rafal [ 2008-04-19, 14:29 ] |
Tytuł: | |
PREMIUM Raporty wywoływane z menu kontekstowego w oknach kartotek Program Handel umożliwia uruchamianie własnych raportów z poziomu menu kontekstowego (prawy klawisz myszy lub Shift+F10) w oknach kartotek. Aby raporty pojawiły się w żądanym menu kontekstowym, raport należy umieścić w odpowiednim katalogu w kartotece raportów. W katalogu ‘Raporty\Kartoteki\Raporty z menu’ dostępny jest szereg podkatalogów odpowiadających poszczególnym kartotekom programu. Umieszczenie raportu w jednym z tych katalogów spowoduje, że nazwa raportu będzie widoczna w menu kontekstowym odpowiadającej mu kartoteki i po wybraniu tej pozycji raport uruchomi się. Dodatkowo w nazwie raportu można dodać na końcu sekwencję {K} gdzie K może być znakiem z zakresu 0-1, A-Z, F1-F12. Dzięki temu raport będzie dostępny z kartoteki również poprzez skrót klawiszowy Alt+K FORTE Raporty wywoływane z menu kontekstowego w oknach kartotek i formatkach Program Handel forte umożliwia uruchamianie własnych raportów z poziomu menu kontekstowego (prawy klawisz myszy lub Shift+F10) w oknach kartotek i w formatkach obiektów kartotekowych. Aby raporty pojawiły się w żądanym menu kontekstowym, raport należy umieścić w odpowiednim katalogu w kartotece raportów. W katalogu ‘Raporty\Procedury\Raporty z menu kartotek’ dostępny jest szereg podkatalogów odpowiadających poszczególnym kartotekom programu, natomiast w katalogu ‘Raporty\Procedury\Raporty z menu formatek dostępny jest szereg podkatalogów odpowiadających poszczególnym formatkom obiektów kartotekowych. Umieszczenie raportu w jednym z tych katalogów spowoduje, że nazwa raportu będzie widoczna w menu kontekstowym odpowiadającej mu kartoteki lub formatki i po wybraniu tej pozycji raport uruchomi się. Dodatkowo w nazwie raportu można dodać na końcu sekwencję {K} gdzie K może być znakiem z zakresu 0-1, A-Z, F1-F12. Dzięki temu raport będzie dostępny z kartoteki lub formatki również poprzez skrót klawiszowy Alt+K. Dodatkowo istnieje prawo użytkownika ‘Inne\Wywoływanie raportów z menu kartotek i formatek ’ które zezwala bądź nie na wykonywanie tych procedur użytkownikowi. Kartoteki z których mogą być wołane raporty (takie też są nazwy podkatalogów w których należy umieszczać raporty): - Sprzedaż - Zakupu - Magazyn - Zamówienia obce - Zamówienia własne - Pieniądze - Raporty płatności - Kontrahenci - Pracownicy - Urzędy - Towary - Dostawy - Rezerwacje - Zlecenia Okna z których mogą być wołane raporty (takie też są nazwy podkatalogów w których należy umieszczać raporty): - Dokument sprzedaży - Dokument zakupu - Dokument magazynowy - Zamówienie obce - Zamówienie własne - Dokument płatności - Kontrahent - Pracownik - Urząd - Towar - Dostawa - Rezerwacja - Receptura - Zlecenie Przykład raportu wywoływanego z kartoteki dokumentów sprzedaży (skrót klawiszowy Alt+F). Kod: //"rapmenuF.sc","raport z menu{F}","\Procedury\Raporty z menu kartotek\Sprzedaż\",0,1.0.0,SYSTEM //////////////////////////////// // raport z menu{F} // rapmenuF.sc ///////////////////////////// int err long idObiektu err = SetTaggedPos(FS) while err idObiektu = GetLineId() print idObiektu print "\n" err = SetTaggedPos(NX) wend Przykład raportu wywoływanego z okna towaru (skrót klawiszowy Alt+2). Kod: //"rapmenu2.sc","raport z menu{2}","\Procedury\Raporty z menu formatek\Towar\",0,1.0.0,SYSTEM //////////////////////////////// // raport z menu{2} // rapmenu2.sc ///////////////////////////// long idObiektu = GetLineId() print idObiektu Funkcja int GetLineId() zwraca identyfikator (id) obiektu (dokumentu, kontrahenta, …) z formatki (okna) którego wywołany został raport. Dodatkowo, jeśli raport wywołany został z formatki dokumentu (handlowego, magazynowego lub zamówienia), a kursor znajdował się w jakiejś pozycji, identyfikator tej pozycji możemy uzyskać przy pomocy funkcji int GetLinePosId(). |
Autor: | rafal [ 2008-04-19, 14:47 ] |
Tytuł: | |
Jeżeli udało Ci się utworzyć swój nowy raport w odpowiednim miejscu kolejną rzeczą jaką trzeba zrobić to rozpoznać, które dokumenty były zaznaczone w kartotece i dla nich wykonać zaplanowane czynności. Dobrym przykładem będzie zmiana znacznika zaznaczonych dokumentów. Kod: // pobranie pierwszego zaznaczonego dokumentu int iPozycjaNaLiscie = SetTaggedPos( FS ) while iPozycjaNaLiscie print using "%d"+lf, iPozycjaNaLiscie // pobranie następnego zaznaczonego dokumentu int iPozycjaNaLiscie = SetTaggedPos( NX ) wend Polecenie SetTaggedPos umożliwia ustawienie spośród zaznaczonych wierszy tabeli przeznaczonego do pobrania danych. Składnia: Long SetTaggedPos ( pozycja) Argumenty: pozycja - Pozycja ustawianego wiersza tabeli: FS - pierwsza linia NX - kolejna linia LS - ostatnia linia PR - poprzednia linia Wartość zwracana: Zwraca numer ustawionego wiersza w tabeli lub zero, gdy operacja ustawianie wiersza tabeli zakończy się niepowodzeniem. Kod: // pobranie pierwszego zaznaczonego dokumentu int iPozycjaNaLiscie = SetTaggedPos( FS ) long lIdDokumentu while iPozycjaNaLiscie lIdDokumentu = GetLineId( iPozycjaNaLiscie ) print using "Pozycja : %d IdDokumentu %l"+lf, iPozycjaNaLiscie, lIdDokumentu // pobranie następnego zaznaczonego dokumentu int iPozycjaNaLiscie = SetTaggedPos( NX ) wend Polecenie GetLineId zwraca identyfikator wskazanego wiersza danych tabeli okna, w którym wykonywany jest raport. Jeżeli polecenie nie zawiera argumentu pozycja to zwracany jest identyfikator wiersza ustawionego jednym z poleceń SetPos, SetFullPos lub SetTaggedPos. Składnia Long GetLineID ([Long pozycja]) Argumenty pozycja - Numer wiersza tabeli lub nazwa charakterystyczna. Nazwy charakterystycznego wiersza tabeli: HEAD - nagłówek (pierwszy wiersz) tabeli FOOT - stopka (ostatni wiersz) tabeli. Wartość zwracana Id obiektu w odpowiedniej bazie danych. Kod: // pobranie pierwszego zaznaczonego dokumentu int iPozycjaNaLiscie = SetTaggedPos( FS ) long lIdDokumentu baseDK dk while iPozycjaNaLiscie //pobranie id dokumentu lIdDokumentu = GetLineId( iPozycjaNaLiscie ) // zmiana znacznika zaznaczonego dokumentu dk.GetRecById( lIdDokumentu ) dk.SetField("znaczniki",65) dk.Update() print using "Pozycja : %d IdDokumentu %l"+lf, iPozycjaNaLiscie, lIdDokumentu // pobranie następnego zaznaczonego dokumentu int iPozycjaNaLiscie = SetTaggedPos( NX ) wend |
Autor: | sebapr [ 2008-04-21, 08:52 ] |
Tytuł: | |
Dziekuje bardzo za tak wyczerpujaca odpowiedz. Sebastian |
Autor: | supersebek [ 2014-10-15, 13:42 ] |
Tytuł: | Re: HMP2008 - funkcja z okna kartoteki dokumentow sprzedazy |
Czy zmieniło się coś od tego czasu? Czy jest możliwy raport z menu formatek w Symfonia Handel czy tylko dostępna jest taka opcja w Forte? |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |