Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Delphi pos print razmak

[es] :: Pascal / Delphi / Kylix :: Delphi pos print razmak

[ Pregleda: 4919 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
195.222.35.*



+1 Profil

icon Delphi pos print razmak08.12.2006. u 06:15 - pre 211 meseci
Kako natjerati delphi da printa na POS papir da su brojevi sortirani

bla bla
Naziv cijena kol iznos
kafa 1 2 2
coko 1.5 3 4.5
.
.
.



kod mene se sve razleti...

moj pokusaj (naziv i cijena su ok...preumoran sam da kontam dalje)
Code:
  
printer.Canvas.TextOut(2,14,'R.BR  NAZIV             MPC  KOL  IZNOS');
  datasource1.DataSet.First;
  x:=1;
  vr:=0;
  vru:=0;
  while datasource1.DataSet.Eof=false do
  begin
  vr:=datasource1.DataSet.Fields.Fields[4].AsFloat*datasource1.DataSet.Fields.Fields[10].AsFloat;
  vru:=vru+vr;
  pro:='';//razmak izmedju cijene i naziva
  pro1:='';//razmak izmedju cijene i kolicine
  pro2:='';//razmak izmedju iznosa i kolicine
//ovo sa textout ne ide!!!
      for i:=1 to (23-length(datasource1.DataSet.Fields.Fields[19].AsString )-length(datasource1.DataSet.Fields.Fields[10].AsString)) do
      pro:=pro+' ';
      for i:=1 to (8-length(datasource1.DataSet.Fields.Fields[10].AsString)) do
      pro1:=pro1+' ';
      for i:=1 to (8-length(floattostr(vru))) do
      pro2:=pro2+' ';
      printer.Canvas.TextOut(2,14+x,inttostr(x)+'. '+datasource1.DataSet.Fields.Fields[19].AsString+pro+datasource1.DataSet.Fields.Fields[10].AsString+'     '+datasource1.DataSet.Fields.Fields[4].AsString+'     '+floattostr(vr));
     inc(x);
     datasource1.DataSet.Next;

Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Delphi pos print razmak08.12.2006. u 08:05 - pre 211 meseci
> Kako natjerati delphi da printa na POS papir da su brojevi sortirani

> bla bla
> Naziv cijena kol iznos
> kafa 1 2 2
> coko 1.5 3 4.5

Nisam te najbolje shvatio, ako želiš da odštampaš uređenu listu, sortiranje moraš uraditi pre štampanja. Pogledaj QuickSort. Ako se žališ na uravnanje, moraš se obezbediti da svi redovi imaju isti broj karaktera i da sva polja uvek počinju sa istog mesta, ovo ti je verovatno najlakše da radiš pomoću Format funkcije.
 
Odgovor na temu

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
195.222.35.*



+1 Profil

icon Re: Delphi pos print razmak08.12.2006. u 08:18 - pre 211 meseci
nisam se dobro izrazio.. nisam mislio na sortiranje po nekom redosljedu nego bas
na formatiranje po sirini...
kako da koristim tu format funkciju..nisam nikad.. hvala puno
Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.dynamic.sbb.co.yu.



+1 Profil

icon Re: Delphi pos print razmak08.12.2006. u 09:15 - pre 211 meseci
Koristan link:

http://www.delphibasics.co.uk/RTL.asp?Name=Format


Inace ovako

Code:

ShowMessage(Format('Hleb  %20d', [30]));


Ne zaboravi da koristis font fiskne sirine kako bi sve to imalo smisla
 
Odgovor na temu

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
195.222.35.*



+1 Profil

icon Re: Delphi pos print razmak08.12.2006. u 09:43 - pre 211 meseci
mozes li mi navesti osnovni font koji se koristi a da je fixne sirine..
hvala-

p.s. nikako da skontam kako da napravim ako je x:=3:integer
da napise 00003.. :(

[Ovu poruku je menjao mojeKorIme dana 08.12.2006. u 11:26 GMT+1]
Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Delphi pos print razmak08.12.2006. u 11:12 - pre 211 meseci
> mozes li mi navesti osnovni font koji se koristi a da je fixne sirine..

Courier New, Lucida Console. Inače ako već ispisuješ na pos štampač i ako ti treba što veća brzina možeš raditi direktno slanje sadržaja na štampač (bez Printer.Canvas) ili možeš pokušati da podesiš generic text only drajver za taj štampač.

> p.s. nikako da skontam kako da napravim ako je x:=3:integer
> da napise 00003.. :(

Format('%.10d', [3]);
 
Odgovor na temu

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
195.222.35.*



+1 Profil

icon Re: Delphi pos print razmak08.12.2006. u 11:25 - pre 211 meseci
Code:
Format('%.10d', [inttostr(edit1.text)]);  

ne ide:(

Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Delphi pos print razmak08.12.2006. u 14:31 - pre 211 meseci
> Format('%.10d', [inttostr(edit1.text)]);
> ne ide:(

Ne čudi me ;)
Format('%.10d', [3]) mora da radi, takođe i Format('%.10d', [StrToInt(Edit1.Text)]);

BTW. kada kažeš da nešto ne radi ili ne funkcioniše objasni zašto, šta dobijaš a šta očekuješ, naročito greške spomeni.
 
Odgovor na temu

codeb.s

Član broj: 67549
Poruke: 157
87.250.102.*



+1 Profil

icon Re: Delphi pos print razmak17.12.2006. u 17:57 - pre 211 meseci
Neznam kakav sistem koristis za ispis POS-a (da li je ispis stringlista ili TXT fajla) ja sam se patio ali sam to na kraju odradio ovako:
Napravio sam POS racun u QuickReportu, onda sam Quickreport snimao u txt file , koji sam potom slao na LPT. Tako sam dobio i perfektno poravnane vrijednosti i izgled, ali to zavisi kako se prijesio upis i da li se uopste koristi Quickreport.

Nadam se da ce i tebi ovo odraditi posao.
 
Odgovor na temu

ribar2006

Član broj: 96856
Poruke: 25
87.250.117.*



Profil

icon Re: Delphi pos print razmak18.12.2006. u 11:42 - pre 211 meseci
Pozdrav ne znam da li si uspio da rjesis problem do sada ali u svakom slucaju saljem ti dio svog koda kako sam ja to rijesio

Pozdrav

------
Writeln(PrintFile, '--------------------------------------');
Writeln(PrintFile, 'Artikal Kol Cijena Iznos');
Writeln(PrintFile, '--------------------------------------');
end;

begin
KasaForm.Query1.First;
while not KasaForm.Query1.Eof do
begin
I := 20 - KasaForm.DBEdit2.GetTextLen;
r := StringOfChar(#32, I);
K := 6 - KasaForm.dbedit4.GetTextLen;
s := StringOfChar(#32, K);
L := 4 - KasaForm.dbedit3.GetTextLen;
t := StringOfChar(#32, L);
M := 7 - KasaForm.dbedit5.GetTextLen;
u := StringOfChar(#32, M);
N := 2 - KasaForm.dbedit9.GetTextLen;
v := StringOfChar(#32, N);
O := 10 - KasaForm.label1.GetTextLen;
z := StringOfChar(#32, O);
PP := 8 - KasaForm.label2.GetTextLen;
w := StringOfChar(#32, PP);
Writeln(Printfile,KasaForm.DBEdit2.text,r,
t,KasaForm.Dbedit3.text,s,KasaForm.Dbedit4.Text,' ',
u,KasaForm.Dbedit5.text);
KasaForm.DBNavigator2.BtnClick(nbnext);
end;


Writeln(PrintFile, '--------------------------------------');


Ako ti nije jasno javi se

Pozdrav
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Delphi pos print razmak

[ Pregleda: 4919 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.