⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 u_incassi.pas

📁 基于OOP设计的一套较好的ERP系统
💻 PAS
字号:
unit u_incassi;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ActnList, ImgList, ToolWin, ComCtrls, StdCtrls, ExtCtrls, Db, DBTables,
  Grids, DBGridEh, ppEndUsr, ppProd, ppClass, ppReport, ppComm, ppRelatv,
  ppCache, ppDB, ppDBPipe, ppDBBDE, ppBands, ppCtrls, ppPrnabl;

type
  TIncassi_form = class(TForm)
    Listaimmagini: TImageList;
    ToolBar1: TToolBar;
    ToolButton2: TToolButton;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    dal: TDateTimePicker;
    al: TDateTimePicker;
    ToolButton1: TToolButton;
    ActionList1: TActionList;
    Chiudi: TAction;
    Stampa: TAction;
    Personalizza: TAction;
    Tutti: TAction;
    GrigliaIncassi: TDBGridEh;
    QIncassi: TQuery;
    DSIncassi: TDataSource;
    ToolButton3: TToolButton;
    Incassi: TppBDEPipeline;
    Incassi_report: TppReport;
    incassi_report_designer: TppDesigner;
    ppGroup1: TppGroup;
    ppGroupHeaderBand1: TppGroupHeaderBand;
    ppGroupFooterBand1: TppGroupFooterBand;
    ppDBText1: TppDBText;
    ppDBText2: TppDBText;
    ppDBText3: TppDBText;
    ppDBText4: TppDBText;
    ppDBText5: TppDBText;
    ppSummaryBand1: TppSummaryBand;
    ppDBCalc1: TppDBCalc;
    ppDBCalc5: TppDBCalc;
    ppLabel1: TppLabel;
    ppLabel2: TppLabel;
    ppDBText8: TppDBText;
    ppLabel3: TppLabel;
    ppLabel4: TppLabel;
    ppLabel5: TppLabel;
    ppLabel6: TppLabel;
    ppLabel7: TppLabel;
    ppLabel8: TppLabel;
    ppLabel9: TppLabel;
    QIncassiArticolo: TStringField;
    QIncassiPrezzoivato: TCurrencyField;
    QIncassiAliquotaiva: TFloatField;
    QIncassiSconto: TFloatField;
    QIncassiSconto2: TCurrencyField;
    QIncassiData: TDateField;
    QIncassiQuantita: TFloatField;
    QIncassiImportoIvato: TCurrencyField;
    QIncassiImportoNetto: TCurrencyField;
    QIncassiImposta: TCurrencyField;
    QIncassiDescrizione: TStringField;
    QIncassiArticolointerno: TStringField;
    Valuta: TRadioGroup;
    QIncassiCambioL: TCurrencyField;
    QIncassiCambioE: TCurrencyField;
    QIncassiPrezzo: TCurrencyField;
    ppDBText6: TppDBText;
    ppDBText7: TppDBText;
    ppDBCalc6: TppDBCalc;
    ppDBCalc7: TppDBCalc;
    ppDBCalc8: TppDBCalc;
    ppDBCalc2: TppDBCalc;
    ppDBCalc4: TppDBCalc;
    ppDBCalc3: TppDBCalc;
    procedure ChiudiExecute(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure dalChange(Sender: TObject);
    procedure QIncassiCalcFields(DataSet: TDataSet);
    procedure PersonalizzaExecute(Sender: TObject);
    procedure StampaExecute(Sender: TObject);
    procedure incassi_report_designerCustomSaveDoc(Sender: TObject);
    procedure ValutaClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    Procedure Aggiorna_incassi ;
  end;

var
  Incassi_form: TIncassi_form;

implementation

uses main;

{$R *.DFM}

Procedure TIncassi_form.Aggiorna_Incassi ;
Var
   formato : string ;
begin
 If Valuta.ItemIndex = 0 then
  formato := '#,##0.00'
 else
  formato := '#,##0' ;
 If QIncassi.Active then
    QIncassi.Close ;
 QincassiImportoIvato.DisplayFormat := formato ;
 QincassiImportoNetto.DisplayFormat := formato ;
 QIncassiImposta.DisplayFormat := formato ;
 QIncassiPrezzo.DisplayFormat := formato ;
 QIncassi.Params[0].value := dal.date ;
 Qincassi.Params[1].value := al.date;
 Qincassi.Prepare ;
 Qincassi.Open ;
 
end ;
procedure TIncassi_form.ChiudiExecute(Sender: TObject);
begin
     release ;
end;

procedure TIncassi_form.FormCreate(Sender: TObject);
begin
     dal.Date := Now ;
     Al.Date := Now ;
     Aggiorna_incassi ;
end;

procedure TIncassi_form.dalChange(Sender: TObject);
begin
     Aggiorna_incassi ;
end;

procedure TIncassi_form.QIncassiCalcFields(DataSet: TDataSet);
Var
   Cambio : Real ;
   Valuta_L : String ;
begin
     If Valuta.ItemIndex = 0 then
      begin
        cambio := QincassiCambioE.asFloat ;
        Valuta_L := 'E' ;
      end
     else
      begin
        cambio := QincassiCambioL.AsFloat ;
        Valuta_L := 'L' ;
      end;
     QincassiImportoIvato.asCurrency := Main_form.ArrotondaImponibile4((
                                        (QincassiPrezzoIvato.asCurrency *
                                        ( 1 - QIncassiSconto.asFloat / 100)*
                                        QincassiQuantita.asFloat ) -
                                        QincassiSconto2.asCurrency
                                        )* cambio, Valuta_L) ;
     QincassiImportoNetto.asCurrency := Main_form.ArrotondaImponibile4((QincassiImportoIvato.asCurrency / (1  + QIncassiAliquotaIva.asFloat / 100)) ,Valuta_L) ;
     QincassiImposta.AsCurrency := Main_form.ArrotondaImponibile4(QincassiImportoIvato.asCurrency - QincassiImportoNetto.AsCurrency ,Valuta_L) ;
     QincassiPrezzo.AsCurrency := Main_form.ArrotondaImponibile4(QincassiPrezzoIvato.asCurrency * Cambio,Valuta_L) ;
end;

procedure TIncassi_form.PersonalizzaExecute(Sender: TObject);
VAr
   Nome_Report : string ;

begin
     Nome_report := Main_form.TTconfigStampaIncassi.AsString ;
     If FileExists(nome_report) then
         begin
          incassi_report.Template.filename := nome_report ;
          incassi_report.Template.LoadFromFile ;
         end ;
     incassi_report_designer.show ;

end;

procedure TIncassi_form.StampaExecute(Sender: TObject);
VAr
   Nome_Report : string ;

begin
     Nome_report := Main_form.TTconfigStampaIncassi.AsString ;
     If FileExists(nome_report) then
         begin
          incassi_report.Template.filename := nome_report ;
          incassi_report.Template.LoadFromFile ;
         end ;
     incassi_report.Print ;
end;

procedure TIncassi_form.incassi_report_designerCustomSaveDoc(
  Sender: TObject);
begin
     Main_form.TTConfig.Edit ;
     Main_form.TTconfigStampaIncassi.AsString := incassi_report.Template.Filename ;
     incassi_report.Template.SaveToFile ;
     Main_form.TTconfig.Post ;
end;

procedure TIncassi_form.ValutaClick(Sender: TObject);
begin
 Aggiorna_incassi ;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -