mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
wz / delivery note https://forum.mix-soft.pl/viewtopic.php?f=2&t=1413 |
Strona 1 z 1 |
Autor: | Magic [ 2009-11-18, 19:50 ] |
Tytuł: | wz / delivery note |
Witam Czy ktos moze mi pomóc w temacie raportu do WZ , tak zebym podczas drukowania mogł wybrać drukowanie w jezyku Angielskim ??? Wiem ze trzeba miec raport Próbowałem sam go napisac ale niestety poległem w penym momecie i nie potrafie tego dalej ruszyc |
Autor: | krzysiek [ 2009-11-18, 20:36 ] |
Tytuł: | |
pewien moment to mało precyzyjne określenie. Zeby zmienic raport czy go napiac trzeba niestety znać język programowania w którym jest napisany. Na początek napisz jaka to wersja handlu |
Autor: | byrusia [ 2009-11-18, 20:49 ] |
Tytuł: | |
raport wz to jego tresc oraz includy sa po polsku trzeba to przekopiowac i przetlumaczyc wszystko na angielski (mam na myśli wszedzie tam gdzie jest print i nazwy poszczegolnych naglowkow) dotyczy to takze includow (nazywamy je rowniez inaczej a pozniej w includzie musi sie to dowolywac do nowej zmienionej nazwy) Kod: #include "Formatka - magazyn dokumenty" #include "Dokumenty magazynowe - include" #include "Dokumenty magazynowe - ramki" #include "Wydruki - include" #include "Nagłówek i stopka raportu I" #include "Engine do wydań z magazynu" #include "Formatowanie ramek nagłówka" nie zmieniamy tego co mamy poniewaz posypia nam sie standardowe wydruki zapisujemy i w momencie wydruku wybieramy albo standardowy albo ten zmieniony jesli chcemy miec zupelnie inny wydruk no to pisze sie nowy to jak poprzednik... nie do konca jestem pewna czy o to chodzi.. bo malo precyzyjnie |
Autor: | Magic [ 2009-11-18, 20:51 ] |
Tytuł: | |
wiem ze to nie jest precyzyjne , ale nie potrafie tego zrobić z zamówieniami obcymi skopiowałem raport z DEX i poszło a tutaj jest inne układ dokumentu i nie moge tego zrobic Mam handel 2010 r |
Autor: | Magic [ 2009-11-18, 21:03 ] |
Tytuł: | |
mozecie mi to pokazać na raporcie Kod: //"dokmgwz1.sc","Wydanie z magazynu",12419,0,1.0.0,SYSTEM //"Wydanie z magazynu ",12401,14,16 ////////////////// // Wydanie z magazynu // dokmgwz1.sc ///////////// #include "Wydruki - include" #include "Nagłówek i stopka raportu I" #include "Engine do wydań z magazynu" #include "Formatowanie ramek nagłówka" // ***************************** long lTemp int iPom, iPom1, iPom2, iPom3, jd int nkol,fkol,nPom, nPom2 int ramkx,ramky,ramkdx,ramkdy int pbRamki, nRamek, iNazwaWys, iKodWys, iSWWWys string sPom, sBroken, sNazwaBroken, sKodBroken, sSWWBroken int dx,dy, iBroken int tblIn, pom int yramk,dyramk,dxramk,bmp, grayTrigger, yBoldRamk, dyBoldRamk string sNip int tbl0,tbl1,tbl2 int i,j,k,x,y,y2 int KolTab1(1),StlTab1(1),kol(1), KolRam1(2), KolTab1X, tblTemp,KoltabSum(1),StlTabSum(1) int nTblWidth1,nDiff int StlTabH(1) int nTblMarg = 5 #define FCENY #include "Formatka - magazyn dokumenty" #include "Dokumenty magazynowe - include" #include "Dokumenty magazynowe - ramki" int sub ObliczWys( string s, int szer ) int t ObliczWys=0 sBroken="" iBroken=0 if GRAF then szer -= TextWidth(" ") if !s then exit while s t = BreakLine(szer,0,1,s) if TextWidth(Mid(s,1,t))>szer then t = BreakLine(szer,0,0,s) ObliczWys += TextHeight(Mid(s,1,t)) if GRAF then sBroken +=" " sBroken+=Mid(s,1,t)+lf iBroken += 1 s = Mid(s,t+1) if s && mid(s,1,1)==" " then s = Mid(s,2) if s && mid(s,1,1)=="\n" then s = Mid(s,2) wend endsub string sub NaCene( float cena ) int k,l if bZaokr then buf = Kwota(cena) else buf = using "%.6f",cena l=k=len(buf) while l>0 && buf(l)!='.' l-=1 wend if l then l+=2 while k>l && buf(k)=='0' k-=1 wend buf = mid( buf, 1, k) endif replace ".","," NaCene = buf endsub // ************************* int sub Add(int pos, int szer, int stl, int typ ) int i,siz=size(KolTab1) if KolTab1(1) then //jeśli nie pierwsze wywołanie siz+=1 Grow KolTab1,1 Grow StlTab1,1 Grow kol,1 endif if pos == -1 then pos=siz else For i = siz To i<=pos+1 step -1 KolTab1(i) = KolTab1(i-1) StlTab1(i) = StlTab1(i-1) kol(i) = kol(i-1) Next i pos+=1 endif KolTab1(pos) = szer StlTab1(pos) = stl kol(pos) = typ endsub int sub DrukujKontakt(string t1, string t2, string fx, string eml, int flatmode) if flatmode then if t1 then SetFont ( "tekst" ) : print "Telefon:" SetFont ( nb ) : print t1 if t2 then print ", ";t2 endif if fx then if t1 then print " " SetFont ( "tekst" ) : print "Fax:" SetFont ( nb ) : print fx; endif if eml then if t1 || fx then print " " SetFont ( "tekst" ) : print "E-mail:" SetFont ( nb ) : print eml endif exit endif if t1 then tabela #tblIn kolumna 1 : SetFont ( "tekst" ) : print "Telefon:" kolumna 2 : SetFont ( nb ) : print t1 if t2 then print ", ";t2 if fx then SetFont ( "tekst" ) : print " Fax: " SetFont ( nb ) : print fx endif koniec endif if fx && !t1 then tabela #tblIn kolumna 1 : SetFont ( "tekst" ) : print "Fax:" kolumna 2 : SetFont ( nb ) : print fx; koniec endif if eml then tabela #tblIn kolumna 1 : SetFont ( "tekst" ) : print "E-mail:" kolumna 2 : SetFont ( nb ) : print eml koniec endif endsub int sub WypiszDane() int nLines if !(pbRamki & 1) && (bSprzedawca || !nBitmap) then // wypisanie danych sprzedawcy SetStyl ( nl ) nPom = TextWidth("Dostawca: ")+10 tblIn = tabela 0,5,nPom,nl,dx-5-nPom,nbl tabela #tblIn kolumna 1,"Dostawca: " kolumna 2,firma.nazwa koniec nPom = TextWidth("Telefon:")+10 tblIn = tabela 0,5,nPom,nl,dx-5-nPom,nbl tabela #tblIn kolumna 1,"Adres:" kolumna 2, firma.Kod+" "+firma.miasto if firma.ulica then print ", ";firma.ulica koniec sNip = firma.nip if sNip then nLines+=1 tabela #tblIn kolumna 1 SetFont ( "tekst" ) : print DajNip( sNip ) kolumna 2 SetFont ( nb ) : print buf koniec endif DrukujKontakt(firma.Telefon1, firma.Telefon2, firma.fax, firma.email, 0 ) pbRamki |= 1 exit endif if !(pbRamki & 2) && bOdbiorca && sNabywca then SetStyl ( nl ) if dx!=str.szer then nPom = TextWidth("Odbiorca: ")+10 tblIn = tabela 0,5,nPom,nl,dx-nPom,nbl tabela #tblIn kolumna 1,"Odbiorca:" kolumna 2,sNabywca koniec nPom = TextWidth("Telefon: ")+10 tblIn = tabela 0,5,nPom,nl,dx-nPom,nbl tabela #tblIn kolumna 1,"Adres:" kolumna 2 print sNabKodPocz;" ";sNabMiasto if sNabAdres then print ", ";sNabAdres koniec if sNabNip then tabela #tblIn kolumna 1 SetFont ( "tekst" ) : print DajNip( sNabNip ) kolumna 2 SetFont ( nb ) : print buf;" " if bKonth then SetFont ( "tekst" ) : print " Kod: " SetFont ( nb ) : print sNabKod endif koniec endif if bKonth && !sNabNip then tabela #tblIn kolumna 1 SetFont ( "tekst" ) : print " Kod: " kolumna 2 SetFont ( nb ) : print sNabKod koniec endif DrukujKontakt(sNabTel1, sNabTel2, sNabFax, sNabEMail, 0 ) else print " Odbiorca: " SetFont( nb ) print sNabywca SetFont ( "tekst" ) print " Adres: " SetFont ( nb ) print sNabKodPocz;" ";sNabMiasto if sNabAdres then print ", ";sNabAdres print lf if sNabNip then SetFont ( "tekst" ) : print " ";DajNip( sNabNip ) SetFont ( nb ) : print buf;" " endif if bKonth then SetFont ( "tekst" ) : print " Kod: " SetFont ( nb ) : print sNabKod endif DrukujKontakt(sNabTel1, sNabTel2, sNabFax, sNabEMail, 1 ) endif pbRamki |= 2 exit endif if !(pbRamki & 4) && (bMgKod || bMgNazwa) then SetStyl ( nl ) nPom = TextWidth("Nazwa magazynu: ")+10 tblIn = tabela 0,5,nPom,nl,dx-nPom,nbl firma.Magazyn(nMagazyn) if bMgKod then tabela #tblIn kolumna 1,"Kod magazynu: " kolumna 2,firma.KodMagazynu koniec endif if bMgNazwa then tabela #tblIn kolumna 1,"Nazwa magazynu: " kolumna 2,firma.nazwa koniec endif pbRamki |= 4 exit endif if !(pbRamki & 8) && (bDokHandl) && (sKodDokHand || sDataDokHand) then SetStyl ( nl ) : print " Dokument handlowy: " SetStyl( nbl ) : print sKodDokHand if sDataDokHand then SetStyl( nl ) : print " Data: " SetStyl( nbl ) : print sDataDokHand endif pbRamki |= 8 exit endif endsub int sub Naglowek() int rozszerz=0,masa=0 tbl0 = tabela 1,nTblMarg,KolTab1,StlTabH ramka od KolTab1X, #Y+10,nTblWidth1,10,0,nGray tabela #tbl0 buf = "Nazwa" if nKod==1 then buf += ",kod" if nKod==1 && nKodTyp==2 then buf+=" obcy" if nKod==1 && nKodTyp==3 then buf+=" paskowy" y = TextHeight("X")/2 : if !bDostawy then kolumna 1 : print at #X,y; "Lp." kolumna 2 : print at #X,y; buf endif for i = 3-2*bDostawy to i > nkol select case kol(i) case KOD sPom = "Kod" if nKodTyp==2 then sPom+=" obcy" if nKodTyp==3 then sPom+=" paskowy" case ILOSC,ILOSCD sPom = "Ilość" case JM sPom = "Jm" case CENA,CENAD Select case nCenaElem case 2 sPom="Cena magazynowa" case 3 sPom="Cena A" case 4 sPom="Cena B" case 5 sPom="Cena C" case 6 sPom = "Cena D" endSelect case WART,WARTD sPom = "Wartość" case DOSTAWY sPom = "Dostawa" case SWWKW sPom = G_SWWKW//"SWW/PKWiU" case IT_MASA spom = "Masa Intrastat":masa=1 case IT_ILOSCJU spom = "Ilość Intrastat" case IT_JMJU spom = "Jm Intrastat" endselect if ObliczWys(spom,KolTab1(i))>3*y then rozszerz=1:if masa ==1 then kolumna i-1,lf:print " " if (kol(i)==CENAD || kol(i)==CENA) && nCenaElem==2 then kolumna i : print at #X,0; sPom else kolumna i : print at #X,y; sPom endif next i print at 0,y*2;" " koniec koniec if bDostawy then dy=str.Pozycja(#B)-str.Pozycja(#T) ramka od 0,#T,KolTab1X,dy,0,nGray pom = tabela 1,0,KolRam1,StlTabH Tabela #pom kolumna 1 : print at #X,y; "Lp.";lf if rozszerz == 1 then kolumna 1," " kolumna 2 : print at #X,y; buf if !nKod then kolumna 3 print at #X,y;"Kod" if nKodTyp==2 then print " obcy" if nKodTyp==3 then print " paskowy" endif if bSWW then kolumna 3+!nKod : print at #X,y;G_SWWKW //"SWW/PKWiU" print at 0,y*2;" " koniec koniec endif endsub int sub PiszPozycje() string sTmp tabela #tbl1, at x,#Y if !bDostawy then kolumna 1, (using "%d",i) //ObliczWys(poz_opis.Get(using"%d",Pozycje(i).Lp),KolTab1(2)-15) //kolumna 2, sBroken sTmp=poz_opis.Get(using"%d",Pozycje(i).Lp) if nKod==1 then select case nKodTyp case 1 sTmp+= " " + Pozycje(i).Kod case 2 sTmp+= " " + Pozycje(i).KodObcy case 3 sTmp+= " " + KodPaskowy_pozycji(pozycje(i).idtw) endselect endif endif kolumna 2,PiszWyrazy(sTmp,KolTab1(2)) For k = 3-2*bDostawy To k > nkol select case kol(k) case KOD select case nKodTyp case 1 buf = Pozycje(i).Kod case 2 buf = Pozycje(i).KodObcy case 3 buf = KodPaskowy_pozycji(pozycje(i).idtw) endselect case JM buf = iif(nJednMiary,Pozycje(i).JmWP,Pozycje(i).Jm) case CENA buf = NaCene( iif(nJednMiary,Pozycje(i).cenaWP,Pozycje(i).cena)) replace ".", "," case CENAD buf = NaCene( iif(nJednMiary,Dostawy(jd).cena * (Pozycje(i).Ilosc / Pozycje(i).IloscWP),Dostawy(jd).cena) ) case ILOSC buf = using "%4.4f", iif(nJednMiary,Pozycje(i).IloscWP,Pozycje(i).Ilosc) replace ".","," delete regular "(0#$)|(,0#$)" case ILOSCD buf = using "%4.4f",iif(nJednMiary,(Dostawy(jd).Ilosc / (Pozycje(i).Ilosc / Pozycje(i).IloscWP)),Dostawy(jd).Ilosc) delete regular "(0#$)|(.0#$)" case WART buf = kwota ( Pozycje(i).Wartosc ) case WARTD buf = kwota ( Dostawy(jd).Wartosc ) case DOSTAWY buf = Dostawy(jd).nazwa case SWWKW buf = Pozycje(i).SWW case IT_MASA buf = using "%4.4f",(IIF(bDostawy,Dostawy(jd).Ilosc,Pozycje(i).Ilosc)*Pozycje(i).przelITMasa) replace ".", "," delete regular "(0#$)|(,0#$)" case IT_ILOSCJU buf = using "%4.4f",(IIF(bDostawy,Dostawy(jd).Ilosc,Pozycje(i).Ilosc)*Pozycje(i).przelITJU) replace ".", "," delete regular "(0#$)|(,0#$)" case IT_JMJU buf = pozycje(i).JmITJU endselect kolumna k, buf next k koniec dy+=str.pozycja(#B)-str.pozycja(#T) if bVertLines then if Pozycje(i).lp==1 then DrawLine at #L,#T,nTblWidth1,0 nPom=x pom = str.pozycja(#B)-str.Pozycja(#T) for k=1 to k>nkol DrawLine at nPom,#T,0,pom nPom+=KolTab1(k) next k DrawLine at nPom,#T,0,pom endif endsub int Sub PozycjePrzyDostawach(int Suma) if bVertLines then DrawLine at #L,#B,nTblWidth1,0 // wyznaczenie dy - rysujemy ramki żeby zmierzyć ich wysokość SetStyl(nl) buf=poz_opis.Get(using"%d",i) if nKod==1 && nKodTyp==1 then buf += " " + Pozycje(i).Kod if nKod==1 && nKodTyp==2 then buf += " " + Pozycje(i).KodObcy if nKod==1 && nKodTyp==3 then buf += " " + KodPaskowy_pozycji(pozycje(i).idtw) iNazwaWys = ObliczWys(buf,KolRam1(2)-1)+5 if iNazwaWys>dy then dy=iNazwaWys sNazwaBroken = sBroken if !nKod then select case nKodTyp case 1 iKodWys = ObliczWys( Pozycje(i).Kod, KolRam1(3)-1)+5 case 2 iKodWys = ObliczWys( Pozycje(i).KodObcy, KolRam1(3)-1)+5 case 3 iKodWys = ObliczWys( KodPaskowy_pozycji(pozycje(i).idtw), KolRam1(3)-1)+5 endselect sKodBroken = sBroken if iKodWys>dy then dy=iKodWys endif if bSWW then iSWWWys = ObliczWys( Pozycje(i).SWW, KolRam1(3+!nKod)-1)+5 sSWWBroken = sBroken if iSWWWys>dy then dy=iSWWWys endif // ramki na wysokosc dy SetStyl(nc) pom = TextHeight("X") tblTemp = tabela 0,0, KolRam1(1),nc tabela #tblTemp, at 0,0 if iPom != i then print at #X,0;using "%d",i koniec dx=KolRam1(1) SetStyl(nl) tblTemp = tabela 0, 0, KolRam1(2),nl tabela #tblTemp, at dx,0 if iPom != i then print at #X,0;sNazwaBroken koniec dx+=KolRam1(2) if !nKod then tblTemp = tabela 0, 0, KolRam1(3),nl tabela #tblTemp, at dx,0 if iPom != i then print at #X,0;sKodBroken koniec dx+=KolRam1(3) endif if bSWW then tblTemp = tabela 0, 0, KolRam1(3+!nKod),nl tabela #tblTemp, at dx,0 if iPom != i then print at #X,0;sSWWBroken koniec dx+=KolRam1(3) endif x=0 for k=1 to k>Size(KolRam1) DrawLine at x,0,0,dy x+=KolRam1(k) next k DrawLine at x,0,0,dy DrawLine at 0,0,str.szer,0 DrawLine 0,dy DrawLine -str.szer,0 koniec y = str.Pozycja(#Y) if suma then tabela #tbl1, at KolTab1X,#Y For k = 1 To k > nkol select case kol(k) case JM buf = iif(nJednMiary,Pozycje(i).JmWP,Pozycje(i).Jm) case CENAD buf = NaCene( iif(nJednMiary,Pozycje(i).cenaWP,Pozycje(i).cena)) case ILOSCD buf = using "%4.4f", iif(nJednMiary,Pozycje(i).IloscWP,Pozycje(i).Ilosc) delete regular "(0#$)|(.0#$)" case WARTD buf = kwota ( Pozycje(i).Wartosc ) case DOSTAWY buf = "Razem" case IT_MASA buf = using "%4.4f",(Pozycje(i).Ilosc*Pozycje(i).przelITMasa) replace ".", "," delete regular "(0#$)|(,0#$)" case IT_ILOSCJU buf = using "%4.4f",(Pozycje(i).Ilosc*Pozycje(i).przelITJU) replace ".", "," delete regular "(0#$)|(,0#$)" case IT_JMJU buf = pozycje(i).JmITJU endselect kolumna k, buf next k koniec endif dy = str.pozycja(#B)-str.pozycja(#T) ramka od KolTab1X,#T,nTblWidth1-2,dy-2,2 koniec x=KolTab1(1)+KolTab1X for j=2 to j>nkol DrawLine at x,#T,0,dy x+=KolTab1(j) next j iPom=i EndSub //--------------------------------------------------------------- if !GRAF then goto Wydruk_Tekstowy str.wydruk ( 0, -1, -1 ) strona 50,90,50,100 CheckFooterSize() bc = Styl ( "nagłówek", 0, "bc" ) nl = Styl ( "tekst", -1, "nl" ) nc = Styl ( "tekst", 0, "nc" ) nr = Styl ( "tekst", 1, "nr" ) kr = Styl ( "kwota", 1, "kr" ) nb = CopyFont ( "tekst",1 ) grub = CopyFont ( "tekst", 1, 45 ) numr = CopyFont ( "tytuł", 1, 45 ) nbl = Styl ( nb, -1, "nbl" ) ss = CopyFont ( "tekst", -1, 25 ) sc = Styl ( ss, 0, "sc" ) sc2 = Styl ( CopyFont ( "tekst", -1, 30 ), 0, "sc2" ) sc3 = Styl ( CopyFont ( "tekst", -1, 32 ), 0, "sc3" ) bb = CopyFont ( "tytuł", 1, 50 ) bbc = Styl ( bb, 0, "bbc" ) pom = (nKod==2) + !bCena + !bWart + !bSWW if bDostawy then KolRam1(1) = 100 KolRam1(2) = 350 + pom*10 if !nKod then grow KolRam1,1 : KolRam1(3)= 250 + pom*20 if bSWW then grow KolRam1,1 : KolRam1(size(KolRam1))= 250 + pom*20 add ( -1, 250+pom*20, nc, DOSTAWY ) else Add ( -1, 100, nc, 0 ) Add ( -1, 350 + pom*10, nl, 0 ) if !nKod then Add ( -1, 250 + pom*20, nl, KOD ) if bSWW then Add ( -1, 250 + pom*20, nl, SWWKW ) endif Add ( -1, 150 + pom*30, kr, ILOSC + bDostawy ) Add ( -1, 100 + pom*20, nc, JM ) if bCena then Add ( -1, 200 + pom*20 + 40*(!bZaokr), kr, CENA + bDostawy ) if bWart then Add ( -1, 220 + pom*20, kr, WART +bDostawy ) if nIT == 0 then Add(-1,150+pom*30,kr,IT_MASA) if nIT == 1 then Add(-1,150+pom*30,kr,IT_ILOSCJU) Add(-1,150+pom*20,nc,IT_JMJU) endif nkol=Size(kol) grow StlTabH,nkol-1 for i=1 to i>nkol StlTabH (i) = bc nTblWidth1 += KolTab1(i) next i for i=1 to i>size(KolRam1) KolTab1X+=KolRam1(i) next i pom=str.szer if bDostawy then pom-=KolTab1X if nTblWidth1 > pom then message sMarg : error "" else if bDostawy then KolRam1(2) += pom-nTblWidth1 KolTab1X += pom-nTblWidth1 else KolTab1(2) += pom-nTblWidth1 nTblWidth1 = pom endif endif npom = 1+ bWart+((nIT+1)%3) grow KolTabSum,npom-1 grow StlTabSum,npom-1 npom2=0 for i=npom-1 to i<0 step -1 KolTabSum(npom-i) = KolTab1(size(KolTab1)-i) npom2+=KolTab1(size(KolTab1)-i) StltabSum(npom-i) = Stltab1(size(StlTab1)-i) next i StltabSum(1) = nc //początek rysowania if nBitmap==1 then if !nBmpCoord(1) then nBmpCoord(1)=str.szer if !nBmpCoord(2) then nBmpCoord(2)=250 bmp = Bitmap nBmpCoord(1),nBmpCoord(2),sBitmap Bitmap #bmp, at nBmpCoord(3),nBmpCoord(4) print lf : print at #X,#Y+5; endif FRNewRow(0) select case nBitmap case 0 FRAddCol(-33,220,1,bRamki,0) FRAddCol(-34,220,0,0,0) FRAddColRow(130,2,bRamki,nGray) FRAddColRow(80,3,bRamki,0) FRAddCol(-33,220,0,0,0) FRAddColRow(65,4,bRamki,0) FRAddColRow(-100,5,0,0) FRAddColRow(80,6,bRamki,0) case 1 FRAddCol(-33,170,0,0,0) FRAddColRow(80,3,bRamki,0) FRAddColRow(60,6,bRamki,0) FRAddCol(-34,170,2,bRamki,nGray) FRAddCol(-33,170,0,0,0) FRAddColRow(55,4,bRamki,0) FRAddColRow(-100,5,0,0) case 2 lTemp = str.szer lTemp = lTemp*66/100 nPom=lTemp if !nBmpCoord(1) then nBmpCoord(1)=nPom - nBmpCoord(3) if !nBmpCoord(2) then nBmpCoord(2)=450 - iif(nBmpCoord(4)>=450,0,nBmpCoord(4)) if nBmpCoord(1)>nPom then nBmpCoord(1)= nPom if nBmpCoord(1)+nBmpCoord(3)>nPom then nBmpCoord(3)=0 nPom = iif(nBmpCoord(2)+nBmpCoord(4)>450,nBmpCoord(2)+nBmpCoord(4),450) FRAddCol(nBmpCoord(1)+nBmpCoord(3),nPom,11,0,0) FRAddCol(-100,nPom,0,0,0) FRAddColRow(130,2,1,nGray) FRAddColRow(65,4,bRamki,0) FRAddColRow(-100,5,0,0) FRAddColRow(80,3,bRamki,0) FRAddColRow(80,6,bRamki,0) endselect FRDraw() dx = str.szer nRamek = (bSprzedawca || !nBitmap) + (bOdbiorca && sNabywca) + (bMgKod || bMgNazwa) + ((bDokHandl) && (sKodDokHand || sDataDokHand)) if nRamek > 1 then dx = str.szer/2-5 if nRamek>0 then ramka od 0,#B+10,dx,10,bRamki*(nRamek==1) WypiszDane() koniec endif if nRamek > 1 then x = str.pozycja(#R)+10 y = str.pozycja(#T) dy = str.pozycja(#B)-str.pozycja(#T) ramka od x,y,dx,dy,0 WypiszDane() koniec if dy<str.pozycja(#B)-str.pozycja(#T) then dy=str.pozycja(#B)-str.pozycja(#T) ramka od 0,#T,dx,dy,bRamki koniec ramka od x,#T,dx,dy,bRamki koniec endif if nRamek>2 then dx = str.szer if nRamek > 3 then dx = str.szer/2-5 y=str.pozycja(#B)+10 ramka od 0,y,dx,10,bRamki WypiszDane() koniec if nRamek==4 then dy = str.pozycja(#B)-str.pozycja(#T) ramka od #R+10,y,dx,dy,bRamki WypiszDane() koniec endif endif if bOpis && sOpis then Ramka od 0,#B+10,str.szer,10,bRamki SetFont ( "tekst" ) print " " + sOpis koniec endif if bAnulowano then ramka od 0,#Y+10, str.szer,10 SetFont( CopyFont( "tekst",1,100 ) ) Align(0) print "ANULOWANO" koniec endif if !bNoPoz then Naglowek() nTblMarg = 4010 tbl1 = tabela 1*!bVertLines,nTblMarg,KolTab1,StlTab1 if nCenaElem>=3 then UstalTypCen(sCenaTab(nCenaElem)) y2 = str.Pozycja(#Y) For i = 1 To i > size( Pozycje ) if bDostawy then iPom2=str.Pozycja(#Y) ramka at 0,#Y+10*(i!=1),str.szer,10,0,nOddGray*grayTrigger x=KolTab1X dy=0 for jd=1 to jd>dostIdx if Dostawy(jd).lp == i then if iPom3==0 then iPom1=str.Pozycja(#Y) endif if iPom3==1 then iPom1=str.Pozycja(#Y)-iPom1 iPom3=2 endif if iPom3==0 || (iPom3!=0 && (str.Pozycja(#Y)+iPom1+iPom2+44) < str.wys) then PiszPozycje() if iPom3==0 then iPom3=1 else PozycjePrzyDostawach(0) strona ramka at 0,#Y+10*(i!=1),str.szer,10,0,nOddGray*grayTrigger x=KolTab1X dy=0 iPom2=str.Pozycja(#Y) PiszPozycje() endif endif next jd iPom3=0 PozycjePrzyDostawach(1) else x = 0 ramka at 0,#Y,str.szer,10,0,nOddGray*grayTrigger PiszPozycje() koniec endif if bOddGray then grayTrigger = !grayTrigger Next i if bVertLines && !bDostawy then DrawLine at 0,#B,str.szer,0 nTblMarg = 4010 if bWart || nIt!= 2 then tbl0 = tabela 1,nTblMarg,KoltabSum,StltabSum y=str.Pozycja(#Y)+10*bDostawy i=1 tabela #tbl0, od str.szer-nPom2,y kolumna i,"Suma":i+=1 if bWart then kolumna i,Kwota(tot_netto) + " ":i+=1 if nIT==0 then kolumna i,sSumaMasa:i+=1 if nIT==1 then kolumna i,sSumaIloscIT:i+=1 kolumna i, " - " endif koniec dy=str.Pozycja(#B)-y Ramka od str.szer-npom2,y,KolTabSum(1)-1,dy-1,2,nGray koniec i=1 tabela #tbl0, od str.szer-nPom2,y kolumna i,"Suma":i+=1 if bWart then kolumna i,Kwota(tot_netto) + " ":i+=1 if nIT==0 then kolumna i,sSumaMasa:i+=1 if nIT==1 then kolumna i,sSumaIloscIT:i+=1 kolumna i, " - " endif koniec Ramka od str.szer-nPom2+KolTabSum(1),y,nPom2-KolTabSum(1)-1,dy-1,2,-1 koniec if bWart then Ramka od 0, #B+10,str.szer/2,70,1 SetStyl ( nbl ) print at 30,10;"Razem: " SetFont ( grub ) print kwota( tot_netto ) koniec Ramka od 0, #B+10,str.szer,70,1 SetStyl ( nbl ) print at 30,10;"Słownie: " SetFont ( "tekst" ) print KwotaNaTekst( (using "%.2f",tot_netto), "" ) koniec endif endif endif buf = Arg5 : sPom="sc2" if find regular "=-(^u$)|(upowa?nienie)" then buf="Dokument wystawiony na podstawie pisemnego upoważnienia kupującego" else if !buf then buf="imię,nazwisko i podpis osoby upoważnionej do\nodebrania dokumentu" else buf="Odebrał(a): "+buf : sPom="sc3" endif endif SetStyl ( sPom ) ramka od (str.szer/2-700)/2,#B+50,700,250,0 print at #X,#Y+210;buf koniec nPom=str.pozycja(#B)-str.pozycja(#T) buf="imię, nazwisko i podpis osoby upoważnionej do\nwystawienia dokumentu" : sPom="sc2" if Arg4 then buf="Wystawił(a): "+Arg4 : sPom="sc3" SetStyl ( sPom ) ramka od str.szer/2+(str.szer/2-700)/2,#T,700,250,0 print at #X,#Y+210;buf koniec if str.pozycja(#B)-str.pozycja(#T)>nPom then nPom = str.pozycja(#B)-str.pozycja(#T) ramka od (str.szer/2-700)/2,#T,700,nPom,bRamki,-1 koniec ramka od str.szer/2+(str.szer/2-700)/2,#T,700,nPom,bRamki,-1 koniec if bNotat && sNotatka then print "\n\n" ramka od 0, #y+20, str.szer, 10, bRamki SetStyl(nl) print sNotatka koniec endif if bNotatRodz && sNotatkaRodz then print "\n\n" ramka od 0, #y+20, str.szer, 10, bRamki SetStyl(nl) print sNotatkaRodz koniec endif if arg6 != "" then ramka od 0, #y+20, str.szer, 250 SetFont ( "tekst" ) : Align(-1) print "\n\n" print arg6 koniec endif Dekretacje() close Footer(1) end // --- wydruk tekstowy --- Wydruk_Tekstowy: #include"Wydanie z magazynu - tryb tekstowy" //#include"Wydanie z magazynu - tryb tekstowy" FooterTxt(1) |
Autor: | krzysiek [ 2009-11-18, 21:27 ] |
Tytuł: | |
Jak masz HMP/HMF 2010 to dokumenty magazynowe możesz drukować przez formatki RTF, zdecydowanie prościej sie to przerabia bo robisz kopie rtf'a itd. na pewno na forum jest to gdzieś opisane a potem zmieniasz tylko opisy na angielskie czy jakie tam chcesz. Generalnie do drukowania wystarcza potem tylko wordviewer, tak więc nawet na stanowiskach bez pełnego WORD/Office można generować takie wydruki. Chyba, że ambitnie chcesz modyfikować raporty wewnętrzne to byrusia dał/a Ci wystarczające wskazówki. Skopiowanie/przemianowanie raportów a potem użycie szukaj/znajdz/zamień powinno wystarczyć do całej pracy :) I nie wklejaj całych raportów bo potem człowiek "pół dnia" spędza przewijając temat. Od tego są załączniki. |
Autor: | Magic [ 2009-11-18, 23:10 ] |
Tytuł: | |
udało mi sie zmienic prawie wszystko nie moge dojsc jak zmienić nazwe dokumentu date wystawienia tego wszystkiego co znajduje sie ponad sprzedawca i kupujacym Pomozecie mi Nie wiem jak to zrobić |
Autor: | byrusia [ 2009-11-18, 23:25 ] |
Tytuł: | |
nazwe nadajesz w ustawieniach dokumentu a reszte w ktoryms includzie mozliwe ze w #include "Dokumenty magazynowe - ramki" |
Autor: | Magic [ 2009-11-19, 00:06 ] |
Tytuł: | |
ok juz zrobiłem został mi tylko jeden temat jak pisze zamiast adres - address to zawija mi go do nastepnego wiersza gdzie sie ustawia ilosc liter w danym wierszu i czy tak sie to robi ? w danych sprzedawcy mam: add 01-466 Warszawa ul . postepu 2 rres: |
Autor: | wrob [ 2009-11-19, 00:38 ] |
Tytuł: | |
Pogrzeb w rozmiarach ramki/tabeli w ktorej to drukujesz - albo zmniejsz czcionke :) |
Autor: | rafal [ 2009-11-19, 10:52 ] |
Tytuł: | |
Szerokośc kolumny określana jest poleceniem Kod: nPom = TextWidth("Telefon:")+10 Zwieksz tą wartość do np: Kod: nPom = TextWidth("Telefon:")+50 Tak samo dla dostawcy i dla odbiorcy |
Autor: | Magic [ 2009-11-21, 15:52 ] |
Tytuł: | |
ok zrobione jak ktos potrzebuje taki raport moge go przesłać na miala |
Autor: | zz [ 2010-06-01, 12:50 ] |
Tytuł: | |
To może wklej raport w tym wątku. |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |