📄 etiquetas.pas
字号:
unit Etiquetas;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBTables, RDprint, StdCtrls, ExtCtrls, Buttons;
type
TDFM_ETQ = class(TForm)
Button6: TButton;
RDprint1: TRDprint;
Table1: TTable;
DataSource1: TDataSource;
MODELO: TRadioGroup;
Table1Codigo: TIntegerField;
Table1Razao: TStringField;
Table1Endereco: TStringField;
Table1Bairro: TStringField;
Table1Cidade: TStringField;
Table1Estado: TStringField;
Table1Cep: TStringField;
Table1Data_Compra: TDateField;
Table1Valor_Compra: TBCDField;
Table1CGC_CPF: TStringField;
Table1Inscricao: TStringField;
BitBtn1: TBitBtn;
RDprint2: TRDprint;
Memo1: TMemo;
Image1: TImage;
Label1: TLabel;
procedure Button6Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DFM_ETQ: TDFM_ETQ;
implementation
{$R *.DFM}
procedure TDFM_ETQ.Button6Click(Sender: TObject);
var
coluna : integer;
begin
// Ajusta a largura da folha de acordo com o n鷐ero de colunas
case modelo.ItemIndex of
0 : rdprint1.TamanhoQteColunas := 40;
1 : rdprint1.TamanhoQteColunas := 80;
2 : rdprint1.TamanhoQteColunas := 120;
end;
table1.active := true; // Abre arquivo de clientes
table1.first;
rdprint1.abrir; // inicia cria玢o do relat髍io...
while not table1.eof do
begin
// Primeira Coluna...
coluna := 01;
rdprint1.imp (01,coluna,table1razao.value);
rdprint1.imp (02,coluna,table1endereco.value);
rdprint1.imp (03,coluna,table1cidade.value + ' - ' + table1estado.value);
rdprint1.impf(04,coluna,table1cep.value,[negrito]);
rdprint1.impf(05,coluna + 30 ,'C骴igo: ' + table1codigo.asstring,[comp20]);
table1.next;
// Segunda Coluna...
if modelo.itemindex > 0 then
if not table1.eof then // se n鉶 for fim do arquivo
begin
coluna := 41;
rdprint1.imp (01,coluna,table1razao.value);
rdprint1.imp (02,coluna,table1endereco.value);
rdprint1.imp (03,coluna,table1cidade.value + ' - ' + table1estado.value);
rdprint1.impf(04,coluna,table1cep.value,[negrito]);
rdprint1.impf(05,coluna + 30 ,'C骴igo: ' + table1codigo.asstring,[comp20]);
table1.next;
end;
// Terceira Coluna...
if modelo.itemindex > 1 then
if not table1.eof then // se n鉶 for fim do arquivo
begin
coluna := 81;
rdprint1.imp (01,coluna,table1razao.value);
rdprint1.imp (02,coluna,table1endereco.value);
rdprint1.imp (03,coluna,table1cidade.value + ' - ' + table1estado.value);
rdprint1.impf(04,coluna,table1cep.value,[negrito]);
rdprint1.impf(05,coluna + 30 ,'C骴igo: ' + table1codigo.asstring,[comp20]);
table1.next;
end;
rdprint1.Novapagina; // Salta para a pr髕ima etiqueta
end;
rdprint1.fechar; // Finaliza Relat髍io (Mostra preview ou inicia impress鉶)
table1.active := false; // Fecha arquivo
end;
procedure TDFM_ETQ.BitBtn1Click(Sender: TObject);
var
linha : integer;
begin
// Inicia as variaveis com espa鏰mento necess醨io para as margens...
linha := 3;
table1.active := true; // Abre a tabela...
table1.first;
rdprint2.abrir; // inicia cria玢o do relat髍io...
// Inicia a impress鉶...
while not table1.eof do
begin
// Primeira Coluna...
rdprint2.impf(linha+1,03,table1razao.value,[comp12]);
rdprint2.imp (linha+2,03,table1endereco.value);
rdprint2.imp (linha+3,03,table1cidade.value + ' - ' + table1estado.value);
rdprint2.imp (linha+4,03,table1cep.value);
rdprint2.impf(linha+5,28,'C骴igo: ' + table1codigo.asstring,[comp20]);
table1.next; // proximo registro
// Segunda Coluna...
if not table1.eof then // se n鉶 for fim do arquivo...
begin
rdprint2.impf(linha+1,43,table1razao.value,[comp12]);
rdprint2.imp (linha+2,43,table1endereco.value);
rdprint2.imp (linha+3,43,table1cidade.value + ' - ' + table1estado.value);
rdprint2.impf(linha+4,43,table1cep.value,[negrito]);
rdprint2.impf(linha+5,68,'C骴igo: ' + table1codigo.asstring,[comp20]);
table1.next;
end;
linha := linha + 6; // Incrementa variavel, salta para a pr髕ima etiqueta
// Nova pagina quando imprime as 10 etiquetas na pagina...
if linha >= 62 then
begin
rdprint2.Novapagina;
linha := 3; // retorna
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -