Posty bez odpowiedzi |oraz Aktywne tematy Dzisiaj jest 2024-04-27, 18:37x



Odpowiedz w temacie  [ Posty: 14 ] 
hyperlink w notatkach 
Autor Wiadomość

Rejestracja: 2011-01-04, 17:04
Posty: 12
Post hyperlink w notatkach
Witam,

Mam takie pytanie. Czy można umieścić w notatkach albo gdzieś indziej w fakturze hyperlink. Tak aby po jego kliknięciu otwierała się domyślna przeglądarka i wyświetlała wskazaną stronę.

Pozdrawiam


2011-01-19, 12:39
Wyświetl profil
Autor Wiadomość
 


Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 3983
Pomógł: 445
Post 
Możesz użyć tego dodatku.

Notatka w dokumencie wygląda tak
Obrazek

Po wciśnięciu ALT+1 na otwartym dokumencie pokazuje się lista linków z notatki.
Dwukrotne kliknięcie na linku powoduje otwarcie go w domyślnej przeglądarce.
Obrazek

Co trzeba zrobić?

1. Zainstalować raport
Kod:
//"mixdrz.sc","Otwórz link z notatki dokumentu - include",70012,0,1.0.4,SYSTEM
//" Raporty Mix-soft",2400,14,62


limit 80000
dispatch dGrid
long idDok
int iBut

//------------------------------------------------
string sub GetNotatka()
//------------------------------------------------

basent nt

nt.SetKey ( "super" )
nt.SetKeySeg( "typi",0 )
nt.SetKeySeg( "baza",16 )
nt.SetKeySeg( "super",idDok )

if !nt.GetRec( EQ ) then

   GetNotatka = nt.GetField( "opis" )
endif

endsub


//------------------------------------------------
int Sub AddColumn(dispatch g, string ColName, int ColWidth, int ColType, int ColSize, int ColHidden, int ColLocked)
//------------------------------------------------
   int col

    G.ColumnCount = G.ColumnCount + 1
    col = G.ColumnCount - 1
    G.Columns(col).Name       = ColName
    G.Columns(col).Width       = ColWidth
    G.Columns(col).FieldType(ColType,ColSize)
    G.Columns(col).hidden       = ColHidden
    G.Columns(col).Locked       = ColLocked

endsub

//------------------------------------------------
int sub OnCommand(int id, int msg)
//------------------------------------------------
dispatch dRow

   if id==0 && msg == 0 then
   

                  dGrid.RowHeader = 0
                  dGrid.ColHeader = 0
                  dGrid.ColumnCount = 0
                  dGrid.RowCount = 0

   AddColumn(dGrid, "Link", 550, 0,200, 0, 0)

   buf = GetNotatka()

   
   while find regular "http{*}[ \n]-"
         dRow = dGrid.InsertRow(-1)
         dRow.Value(0) = "http" + regular 1
   wend

   endif
   
endsub

//------------------------------------------------
int sub dGrid_OnDblClick(dispatch q)
//------------------------------------------------   

ShellExecute(dGrid.Rows(q.Value(1)).Value(0),"OPEN")

endsub

//------------------------------------------------
int sub PokazLinki(long idDokumentu)
//------------------------------------------------
   
idDok = idDokumentu

        FORM "Linki", 600,300

                CONTROL "grid", dGrid, 5,5, 580,200
                iBut = button "Zamknij", 5,220, 80, 23, -1

        int rv = ExecForm OnCommand

endsub




2. Zmodyfikować raport Raporty → Procedury → Procedury wywoływane z okien

Kod:
//"procaltn.sc","Procedury wywoływane z okien",12015,0,1.0.0,SYSTEM
//" Procedury",2400,14,62

#include "Otwórz link z notatki dokumentu - include"

/////////////////////////////////////////////////////////////////////////////////////
// Procedury dostępne z poziomu okna dokumentu sprzedaży.
// Uruchamiane po naciśnięciu 'Alt' i cyfry (0-9)

int Sub OnDokumentSprzedazyAlt1(long lIdDk, int bBufor, long lIdPoz)
   
   pokazLinki(lIdDk)

   OnDokumentSprzedazyAlt1 = 0
EndSub

//...

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

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


Ostatnio zmieniony 2011-01-19, 15:30 przez rafal, łącznie zmieniany 1 raz



2011-01-19, 13:51
Wyświetl profil

Rejestracja: 2011-01-04, 17:04
Posty: 12
Post 
"1. Zainstalować raport "

Czy "zainstalować" to znaczy że w RAPORTY -> SPRZEDAŻ powinienem stworzyć nowy raport?

Jeśli tak to czy powinien mieć jakąś specjalną nazwę?


Pozdrawiam i dziękuję za powyższy kod


2011-01-20, 10:28
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 3983
Pomógł: 445
Post 
Skopiuj zawartość zamieszczonego raportu do pliku mixdrz.sc a następnie wykonaj Aktualizację raportów systemowych.

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

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


2011-01-20, 10:56
Wyświetl profil

Rejestracja: 2011-01-04, 17:04
Posty: 12
Post 
Nie miałem na dysku takiego pliku (pracuje na Sage Forte Handel 2011.a)

Utworzyłem taki plik w ...Sage\Forte\Migracja bo tu znalazłem pliki z rozszerzeniem .sc - czy to właściwe miejsce na umieszczenie tego pliku?

Nie widzę też nigdzie przycisku do aktualizacji raportów. Moja wersja jest jeszcze nie aktywowana możliwe że to z tego powodu?

Pozdrawiam i dziękuję z góry za odpowiedź.


2011-01-20, 11:16
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 3983
Pomógł: 445
Post 
Skopiuj ten plik do jakiegoś pustego katalogu np:. C:\Symfonia\raporty
Następnie uruchom raport Raporty → System → Aktualizacja raportów systemowych
Podaj ten katalog.

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

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


2011-01-20, 11:33
Wyświetl profil

Rejestracja: 2011-01-04, 17:04
Posty: 12
Post 
Kod:
//"mixdrz.sc","Otwórz link z notatki dokumentu - include",70012,0,1.0.4,SYSTEM
//"Pomocnicze ",2400,14,62


a plik umieściłem w C:\Program Files\Sage\Forte\Raport_wlasny

i taką ścieżkę podaję do aktualizacji raportów. Jednak otrzymuje błąd:


Cytuj:
mixdrz.sc BŁĄD Sygnatura raporty
'mixdrz.sc' nie zawiera nazwy katalogu


W Raportach systemowych mam taki folder jak Pomocnicze. Próbowałem ze spacją na końcu i bez ale bez różnicy.

Pozdrawiam


2011-01-20, 12:02
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 3983
Pomógł: 445
Post 
Może coś jest nie tak z tym nagłówkiem.
W takim razie w katalogu Pomocnicze zrób nowy raport. Nazwij go Otwórz link z notatki dokumentu - include i wklej zawartość z FORUM.

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

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


2011-01-20, 12:05
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 3983
Pomógł: 445
Post 
Inna sprawa, że raport jest do Symfonii a Ty masz FORTE.
Może nie zadziałać :)

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

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


2011-01-20, 12:06
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 3983
Pomógł: 445
Post 
Wersja dla Handlu FORTE. Tu mechanizm dostępny jest pod prawym klawiszem myszy na dokumencie.

[center]Obrazek [/center]

Kod:
//"mixdrz.sc","Otwórz link z notatki dokumentu","\Procedury\Raporty z menu formatek\Dokumenty sprzedaży\",0,1.0.0,SYSTEM


limit 80000
dispatch dGrid
long idDok
int iBut

//------------------------------------------------
string sub GetNotatka()
//------------------------------------------------

dispatch xDk

xDk = xFactory.NewObject("BDokumentSp")
xDk.Load((using "id=%l",idDok ))

GetNotatka = xDk.notatka

endsub


//------------------------------------------------
int Sub AddColumn(dispatch g, string ColName, int ColWidth, int ColType, int ColSize, int ColHidden, int ColLocked)
//------------------------------------------------
    int col

    G.ColumnCount = G.ColumnCount + 1
    col = G.ColumnCount - 1
    G.Columns(col).Name         = ColName
    G.Columns(col).Width         = ColWidth
    G.Columns(col).FieldType(ColType,ColSize)
    G.Columns(col).hidden         = ColHidden
    G.Columns(col).Locked         = ColLocked

endsub

//------------------------------------------------
int sub OnCommand(int id, int msg)
//------------------------------------------------
dispatch dRow

    if id==0 && msg == 0 then
   

                  dGrid.RowHeader = 0
                  dGrid.ColHeader = 0
                  dGrid.ColumnCount = 0
                  dGrid.RowCount = 0

    AddColumn(dGrid, "Link", 550, 0,200, 0, 0)

    buf = GetNotatka()

   
    while find regular "http{*}[ \n]-"
            dRow = dGrid.InsertRow(-1)
            dRow.Value(0) = "http" + regular 1
    wend

    endif
   
endsub

//------------------------------------------------
int sub dGrid_OnDblClick(dispatch q)
//------------------------------------------------   

ShellExecute(dGrid.Rows(q.Value(1)).Value(0),"OPEN")

endsub

   
idDok = GetLineId()

        FORM "Linki", 600,300

                CONTROL "grid", dGrid, 5,5, 580,200
                iBut = button "Zamknij", 5,220, 80, 23, -1

        int rv = ExecForm OnCommand


NoOutPut()

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

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


2011-01-20, 13:11
Wyświetl profil

Rejestracja: 2011-01-04, 17:04
Posty: 12
Post 
Tak na początek to dzięki za to że pomagasz. Mam jakiś problem potrafię umieścić w menu kontekstowym przycisk w oknie Zakup, Sprzedaż (Raport z menu kartotek) itp ale nie mogę umieścić przycisku w menu kontekstowym już tam gdzie są pozycje co sprzedaliśmy.

Próbuję utworzyć raport w Procedury -> Raporty operacje kartotek -> Dokumenty sprzedaży

A co trzeba zmienić aby wywoływał się z Raport z menu kartotek bo teraz wyskakuje puste okienko.


Pozdrawiam


2011-01-20, 13:51
Wyświetl profil
Ekspert
Ekspert
Awatar użytkownika

Rejestracja: 2008-04-18, 18:52
Posty: 5169
Pomógł: 59
Post 
Jakich kartotek? Mozesz dac obrazek gdzie konkretnie chcesz to umiescic?


2011-01-20, 14:20
Wyświetl profil
Ekspert
Ekspert

Rejestracja: 2007-11-16, 15:08
Posty: 3983
Pomógł: 445
Post 
marian pisze:
A co trzeba zmienić aby wywoływał się z Raport z menu kartotek bo teraz wyskakuje puste okienko.


Utwórz katalog w raportach \Procedury\Raporty z menu formatek\Dokumenty sprzedaży\i tam wstaw ten raport.

Albo zrób przez Aktualizuj raporty systemowe, teraz powinno Ci zadziałać.

_________________
Skontaktuj się z Ekspertem | Zamów dodatek

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


2011-01-20, 14:48
Wyświetl profil

Rejestracja: 2011-01-04, 17:04
Posty: 12
Post 
Tu potrafię wstawić button ale jak wywołam kod to mam puste okno

Obrazek

a tu chciałbym :) ale nie mogę wstawić buttona do menu kontekstowego i czy kodu nie musze jakoś zmienić np inne id czy coś takiego.

Obrazek


2011-01-20, 14:51
Wyświetl profil
Wyświetl posty nie starsze niż:  Sortuj wg  
Odpowiedz w temacie   [ Posty: 14 ] 

Kto jest online

Użytkownicy przeglądający to forum: Nie ma żadnego zarejestrowanego użytkownika i 33 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