📄 discorb_u.pas
字号:
unit DiscoRb_u;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, StdCtrls, Mask, DBCtrls, Db, DBTables;
type
TDiscoRb_Form = class(TForm)
SpeedButton1: TSpeedButton;
TTParDiscoRb: TTable;
DSParDiscoRb: TDataSource;
TTParDiscoRbNumeroprimaRiba: TFloatField;
TTParDiscoRbNumeroultimaRiba: TFloatField;
TTParDiscoRbBollovirtuale: TCurrencyField;
TTParDiscoRbProvinciaintendenza: TStringField;
TTParDiscoRbNumeroautorizzazione: TStringField;
TTParDiscoRbDataautorizzazione: TDateField;
Label4: TLabel;
DBEdit4: TDBEdit;
Label5: TLabel;
DBEdit5: TDBEdit;
Label6: TLabel;
DBEdit6: TDBEdit;
Memo1: TMemo;
Memo2: TMemo;
SpeedButton2: TSpeedButton;
TTParDiscoRbNomefile: TStringField;
Label7: TLabel;
DBEdit3: TDBEdit;
SpeedButton3: TSpeedButton;
DLG: TOpenDialog;
TTParRiba: TTable;
DSParRiba: TDataSource;
TTParRibaDal: TDateField;
TTParRibaAl: TDateField;
TTParRibaBanca: TStringField;
TTParRibaRibacumulativa: TBooleanField;
TTParRibaStampadistinta: TBooleanField;
TTParRibaValuta: TStringField;
TTParRibaDatagenerazionedisco: TDateField;
TTParRibaTotaleriba: TCurrencyField;
DBCheckBox1: TDBCheckBox;
SpeedButton4: TSpeedButton;
TTIntesta: TTable;
DSIntesta: TDataSource;
TTIntestaRagionesociale: TStringField;
TTIntestaIndirizzoSL: TStringField;
TTIntestaCapSL: TStringField;
TTIntestaLocalitaSL: TStringField;
TTIntestaProvinciaSL: TStringField;
TTIntestaPresso: TStringField;
TTIntestaIndirizzoU: TStringField;
TTIntestaCapU: TStringField;
TTIntestaLocalitaU: TStringField;
TTIntestaProvinciaU: TStringField;
TTIntestaTelefono: TStringField;
TTIntestaPartitaiva: TStringField;
TTIntestaRegistrazione: TStringField;
Label3: TLabel;
DBEdit7: TDBEdit;
TTParDiscoRbGruppo: TFloatField;
Label8: TLabel;
DBEdit8: TDBEdit;
SpeedButton5: TSpeedButton;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
function formatta(StrIn, Riempi, Allin : String ; Dim : integer) : String;
procedure ExportRiba();
procedure Spazio(NumeroSpazi : Integer ; Var Riga : String);
function ggmmaa(Data : TDateTime) : String;
end;
var
DiscoRb_Form: TDiscoRb_Form;
implementation
{$R *.DFM}
Uses intesta_u, stp_Riba_u, uelBanca;
function TDiscoRb_Form.formatta(StrIn, Riempi, Allin : String ; Dim : integer) : String;
var
lung, diffr, j : Integer;
Ris, riempimento : String;
begin
//Formattazione: StrIn: Stringa input
// Riempi : carattere di riempimento
// Allin : allineamento (dx-sx)
// Dim: lunghezza stringa risultato
// S : String;
// S := 'ABCDEF';
// S := Copy(S, 2, 3); { 'BCD' }
StrIn := UpperCase(StrIn);
lung := Length(StrIn);
//Se la stringa ha la stessa lunghezza della dimensione voluta
ris := StrIn;
//Se la stringa ha lunghezza superiore alla dimensione voluta...
if lung > Dim then
begin
if allin = 'dx' then
ris := copy(StrIn,(lung - dim + 1),dim)
else
ris := copy(StrIn,1,dim);
end
//Se la stringa e' piu' piccola della dimensione voluta, quindi occorre riempire...
else
begin
if riempi = '' then
riempi := ' ';
diffr := dim - lung;
riempimento := '';
for j := 1 to diffr do
riempimento := riempimento + riempi;
if allin = 'dx' then
ris := riempimento + StrIn
else
ris := StrIn + Riempimento;
end;
result := ris;
end;
procedure TDiscoRb_Form.Spazio(NumeroSpazi : Integer ; Var Riga : String);
var
i : Integer;
begin
//Aggiunge in Riga tanti spazi quanti indicati in Numero spazi
for i := 1 to NumeroSpazi do
riga := riga + ' ';
end;
function TDiscoRb_form.ggmmaa(Data : TDateTime) : String;
var
Anno, Mese, Giorno : Word;
Ris : String;
begin
//Restituisce Data nel formato GGMMAA
DecodeDate(Data, Anno, Mese, Giorno);
//ris := Format('%2d%2d%2d',[Giorno, Mese, Anno]);
ris := FormatFloat('00',Giorno);
ris := ris + FormatFloat('00',Mese);
ris := ris + copy(FormatFloat('00',Anno),3,2);
result := ris;
end;
procedure TDiscoRb_Form.ExportRiba();
var
Fout : TextFile;
Riga, CodAzi, CodAbi, CodCab : String;
CodAbiDb, CodCabDb, debit, valuta : String;
Trb, Drb, BnRb, Bnc, sog : TTable;
CntRiba, CntRec, CntFat : longInt;
Totale : Currency;
Anno, Mese, Giorno : word;
begin
Trb := TTable.create(self);
Trb.databaseName := 'euro2000';
Trb.TableName := 'Triba.db';
Trb.open;
//Posizionamento sulla prima Riba del gruppo
if not Trb.Locate('Gruppo',TTParDiscoRbGruppo.Value,[locaseinsensitive]) then
begin
showMessage('Attenzione!' + #13 + 'Non
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -