Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {*******************************************************}
- { }
- { FrentePDV }
- { }
- { Copyright (C) 2017 Leopard report }
- { C:\Leopard\Pdv\ - FrentePDV 1.0.0.0 }
- { 03/09/2017 02:00:49 }
- { Devenvolvedor: Carlos Alberto Dias da Silva Filho }
- {*******************************************************}
- unit Principal;
- interface
- uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,system.UITypes,
- Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.Grids, Vcl.Menus,AcbrUtil,
- Vcl.Imaging.pngimage, Vcl.Imaging.jpeg, Vcl.Mask, Vcl.DBCtrls, ACBrBase, Vcl.Buttons,
- Vcl.AppEvnts, Vcl.Samples.Gauges, TypInfo, Midaslib,
- Registry, OleCtrls,JvExExtCtrls,
- JvExtComponent, JvPanel, AdvObj, BaseGrid, DBAdvGrid, StrUtils,
- Vcl.ExtCtrls, acImage,ACBrGAV, ACBrBAL, CurvyControls, DBclient, DateUtils,TopCaixa, FatSaldoCliente,
- AdvUtil, Vcl.StdCtrls,Vcl.ComCtrls,SatModel, AdvGrid;
- {$SETPEFlAGS IMAGE_FILE_DEBUG_STRIPPED or IMAGE_FILE_LINE_NUMS_STRIPPED or
- IMAGE_FILE_LOCAL_SYMS_STRIPPED OR IMAGE_FILE_RELOCS_STRIPPED}
- {$WEAKLINKRTTI ON}
- {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
- type
- TForm1 = class(TForm)
- MainMenu1: TMainMenu;
- Abriravenda: TMenuItem;
- Fecharavenda: TMenuItem;
- Cancelaravenda: TMenuItem;
- ProdutosF4: TMenuItem;
- CaixaF11: TMenuItem;
- Sairdosistema: TMenuItem;
- Panel1: TPanel;
- Panel2: TPanel;
- Panel5: TPanel;
- Edit2: TEdit;
- Label5: TLabel;
- Label6: TLabel;
- Label7: TLabel;
- ExecutaLeiturax: TMenuItem;
- Panel7: TPanel;
- Label24: TLabel;
- ExecutaZ: TMenuItem;
- AtualizaBase1: TMenuItem;
- Label22: TLabel;
- Gauge1: TGauge;
- TrayIcon1: TTrayIcon;
- C1: TMenuItem;
- P1: TMenuItem;
- Image2: TImage;
- JvPanel1: TJvPanel;
- Label16: TLabel;
- Shape7: TShape;
- Shape4: TShape;
- Label13: TLabel;
- Shape6: TShape;
- Label15: TLabel;
- Label14: TLabel;
- Shape5: TShape;
- Shape3: TShape;
- Label12: TLabel;
- Shape12: TShape;
- Label3: TLabel;
- DBGrid1: TDBAdvGrid;
- Shape13: TShape;
- Label19: TLabel;
- Timer2: TTimer;
- JvPanel2: TJvPanel;
- Label25: TLabel;
- Edtqx: TEdit;
- EDCodebar: TEdit;
- Label10: TLabel;
- Shape11: TShape;
- DBEdit1: TDBEdit;
- Label11: TLabel;
- Shape8: TShape;
- Shape14: TShape;
- Label23: TLabel;
- DBEdit7: TDBEdit;
- DBEdit3: TDBEdit;
- Label1: TLabel;
- Shape9: TShape;
- Label2: TLabel;
- Shape10: TShape;
- DBEdit2: TDBEdit;
- Panel6: TPanel;
- Label18: TLabel;
- LbFabsn: TLabel;
- Label20: TLabel;
- lsStatuslansat: TLabel;
- JvPanel3: TJvPanel;
- sImage1: TsImage;
- Label17: TLabel;
- DBEdit9: TDBEdit;
- Label26: TLabel;
- N1: TMenuItem;
- A1: TMenuItem;
- ACBrGAV1: TACBrGAV;
- ACBrBAL1: TACBrBAL;
- I1: TMenuItem;
- t1: TMenuItem;
- B1: TMenuItem;
- ImprimeExtrcli: TMenuItem;
- P2: TMenuItem;
- Shape15: TShape;
- Panelproibido: TJvPanel;
- Label4: TLabel;
- Timer3: TTimer;
- Label21: TLabel;
- Image1: TImage;
- P3: TMenuItem;
- edvdanumero: TEdit;
- edNumpdv: TEdit;
- edOperador: TEdit;
- edSituacao: TEdit;
- DBgrid2: TDBAdvGrid;
- M1: TMenuItem;
- D1: TMenuItem;
- R1: TMenuItem;
- T2: TMenuItem;
- T3: TMenuItem;
- Label8: TLabel;
- Shape1: TShape;
- Label9: TLabel;
- DBEdit4: TDBEdit;
- A2: TMenuItem;
- D2: TMenuItem;
- L1: TMenuItem;
- ApplicationEvents1: TApplicationEvents;
- S1: TMenuItem;
- procedure AbriravendaClick(Sender: TObject);
- procedure CaixaF11Click(Sender: TObject);
- procedure FecharavendaClick(Sender: TObject);
- procedure FormActivate(Sender: TObject);
- procedure ExecutaLeituraxClick(Sender: TObject);
- procedure ApplicationEvents1Exception(Sender: TObject; E: Exception);
- procedure AtualizaBase1Click(Sender: TObject);
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure SairdosistemaClick(Sender: TObject);
- procedure Timer2Timer(Sender: TObject);
- procedure DBGrid1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
- procedure EDCodebarKeyPress(Sender: TObject; var Key: Char);
- procedure EDCodebarKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
- procedure EdtqxKeyPress(Sender: TObject; var Key: Char);
- procedure FormShow(Sender: TObject);
- procedure ACBrSAT1GetcodigoDeAtivacao(var Chave: AnsiString);
- procedure ACBrSAT1GetsignAC(var Chave: AnsiString);
- procedure N1Click(Sender: TObject);
- procedure CancelaravendaClick(Sender: TObject);
- procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
- procedure EDCodebarEnter(Sender: TObject);
- procedure ProdutosF4Click(Sender: TObject);
- procedure A1Click(Sender: TObject);
- procedure I1Click(Sender: TObject);
- procedure B1Click(Sender: TObject);
- procedure ACBrBAL1LePeso(Peso: Double; Resposta: AnsiString);
- procedure P2Click(Sender: TObject);
- procedure Timer3Timer(Sender: TObject);
- procedure P3Click(Sender: TObject);
- procedure ImprimeExtrcliClick(Sender: TObject);
- procedure DBgrid2KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
- procedure MainMenu1Change(Sender: TObject; Source: TMenuItem; Rebuild: Boolean);
- procedure ACBrSAT1EnviarDadosVenda(ADados: string; var ARetorno: string);
- procedure M1Click(Sender: TObject);
- procedure D1Click(Sender: TObject);
- procedure R1Click(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure EDCodebarExit(Sender: TObject);
- procedure P1Click(Sender: TObject);
- procedure A2Click(Sender: TObject);
- procedure D2Click(Sender: TObject);
- procedure L1Click(Sender: TObject);
- procedure S1Click(Sender: TObject);
- procedure T3Click(Sender: TObject);
- private
- FTSatConfigClass: TSatConfigClass;
- FCdsTemp: TClientDataSet;
- FCodeBar: String;
- FMutex: THandle;
- FFormAjustado: Boolean;
- { Private declarations }
- public
- { Public declarations }
- property aSatModel: TSatConfigClass read FTSatConfigClass write FTSatConfigClass;
- Function VideoAdjust(Form: TForm):Boolean;
- Procedure vendapelapesquisa(Sender: TObject);
- procedure vendapelapesquisaprevda(Sender: TObject);
- procedure vendapelapesquisadaprevenda(Sender: TObject);
- property CdsTemp: TClientDataSet read FCdsTemp write FCdsTemp;
- property CodeBarEd: String read FCodeBar write FCodeBar;
- procedure LimpaCodeBar;
- procedure BeforeDestruction; override;
- property HMutex: THandle read FMutex write FMutex;
- property FormAjustado: Boolean read FFormAjustado write FFormAjustado;
- Var
- acessotf: integer;
- AStr: String;
- statussat: integer;
- videoajustado, DIG1, DIG2, DIG3, DIG4: integer;
- pesoLido: Double;
- Limitedisponivel: currency;
- faturamentoautorizado: string;
- numeropdv: integer;
- Satassinatura: AnsiString;
- VENDA_NUMERO: integer;
- end;
- var
- Form1: TForm1;
- implementation
- {$R *.dfm}
- uses DataModule, DocumentoPrinc, Senha,DTMProvedor,ProcLib, Cargadetabelas,Iniciaavenda, EscolhaFinal,
- PesquisaCodebar,Informavalorprod,InformaPrevenda, Libraryclass, VerificaLicenca,
- Tipos, TOpvendas,Faturamento, RecebePromissorias,
- DtmConexao, AcbrSatClassFactory,LoadParamsSystDataModel,
- TfrmViewPesqClientes, PesquisaClientesCodeBar,
- DeliveryFactoryClass, BuscPreco, Venda.MiscConstrols.Factory, FactoryComissionamento, FactoryCargadetabelas,
- GeraParcelas.Model, FactoryVendas.Model, HardwareFactory, LoadParamsSystemModel, TLogin,
- FuncoesLibraryClass, DtmItensdaVenda, DtmVendas, TInicializacaoPDv;
- procedure TForm1.vendapelapesquisadaprevenda(Sender: TObject);
- var
- quantidadevenda: Double;
- begin
- Panelproibido.Visible := false;
- Timer3.Enabled := false;
- if DataModule1.CDSCADPRODCAD_VENDAPROIBIDAMEN.AsInteger = 0 then
- begin
- Panelproibido.Visible := false;
- end
- else if DataModule1.CDSCADPRODCAD_VENDAPROIBIDAMEN.AsInteger = 1 then
- begin
- Panelproibido.Visible := true;
- Timer3.Enabled := true;
- end;
- quantidadevenda := strtocurr(Form1.Edtqx.Text);
- { Aqui eu inicio uma nova transação com a tabela de itens da venda }
- TDtmItensdaVenda.CDSITENS.Append;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_SITUACAO').AsString := TDtmVendas.CDSVENDA.FieldByName('VENDA_SITUACAO').AsString;
- { Aqui eu pego a data e hora da inserção do iten na venda }
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DATAVENDA').AsDateTime := now;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_HORADAVENDA').AsDateTime := now;
- { Aqui eu pego o número da venda, gerado pelo autoincreento do banco da tabela CDSVENDA }
- TDtmItensdaVenda.CDSITENS.FieldByName('VENDA_NUMERO').AsInteger := strtoint(Form1.edvdanumero.Text);
- { Aqui tragos as informações do iten da tabela CADPROD do Banco do PDV }
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CODBARRAS').AsString := DataModule2.CDSITENSPVDAITENS_CODBARRAS.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DESCPRODUTO').AsString := DataModule2.CDSITENSPVDAITENS_DESCPRODUTO.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_IDPRODUTO').AsInteger := DataModule2.CDSITENSPVDAITENS_IDPRODUTO.AsInteger;
- { Alimenta aqui os impostos }
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_ICMSCST').AsString := DataModule2.CDSITENSPVDAIMPOSTO_ICMSCST.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_ICMSPICMS').AsFloat := DataModule2.CDSITENSPVDAIMPOSTO_ICMSPICMS.AsFloat;
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_TRIBDESC').AsString := DataModule2.CDSITENSPVDAIMPOSTO_TRIBDESC.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CFOP').AsString := DataModule2.CDSITENSPVDAITENS_CFOP.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_NCM').AsString := DataModule2.CDSITENSPVDAITENS_NCM.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CEST').AsString := DataModule2.CDSITENSPVDAITENS_CEST.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('MARCA').AsString := DataModule2.CDSITENSPVDAMARCA.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('GRUPO').AsString := DataModule2.CDSITENSPVDAGRUPO.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('SUBGRUPO').AsString := DataModule2.CDSITENSPVDASUBGRUPO.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('idmarca').AsInteger := DataModule2.CDSITENSPVDAidmarca.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('IDGRUPO').AsInteger := DataModule2.CDSITENSPVDAIDGRUPO.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('IDSUBGRUPO').AsInteger := DataModule2.CDSITENSPVDAIDSUBGRUPO.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('IDFORNECEDOR').AsInteger := DataModule2.CDSITENSPVDAIDFORNECEDOR.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('FORNECEDOR').AsString := DataModule2.CDSITENSPVDAFORNECEDOR.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('PDV_NUMERO').AsInteger :=
- strtoint(TDtmVendas.CDSVENDA.FieldByName('CAIXA_NUMERO').AsString);
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').AsFloat :=
- DataModule2.CDSITENSPVDAITENS_QUANTIDADE.AsFloat;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsCurrency :=
- DataModule2.CDSITENSPVDAITENS_VLUN.AsCurrency;
- if TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsCurrency <= 0 then
- begin
- Application.CreateForm(TForm19, Form19);
- Form19.Label2.Caption := TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DESCPRODUTO').AsString;
- Form19.showModal;
- end;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_TOTAL').AsFloat := DataModule2.CDSITENSPVDAITENS_TOTAL.AsFloat;
- { Valor de descontos no iten }
- TDtmItensdaVenda.CDSITENS.FieldByName('itens_descvl').AsFloat := DataModule2.CDSITENSPVDAitens_descvl.AsFloat;
- TDtmItensdaVenda.CDSITENS.FieldByName('itens_descpercent').AsFloat := DataModule2.CDSITENSPVDAitens_descpercent.AsFloat;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_UN').AsString := DataModule2.CDSITENSPVDAITENS_UN.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_POSICAOITEN').AsInteger := Form1.DBGrid1.RowCount - 1;
- { Posiciona a tabela de vendas em edição }
- TDtmVendas.CDSVENDA.Edit;
- { Alimento aqui o valor total da venda na tabela CDSVENDA }
- TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORTOTAL').AsFloat := TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORTOTAL').AsFloat +
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_TOTAL').AsFloat;
- { Alimento aqui o valor da somatoria dos itens inseridos na venda somatoria }
- TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORVENDA').AsFloat := TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORVENDA').AsFloat +
- (TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').AsFloat *
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsFloat);
- { aqui eu conto os registros inseridos na tabela de itens e adiciono +1 }
- if pos(',', Floattostr(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').Value)) > 0 then
- begin
- TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger := TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger + 1;
- end;
- if pos(',', Floattostr(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').Value)) <= 0 then
- begin
- TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger := TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger +
- Round(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').Value);
- end;
- { Cest/Nmc }
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CST').AsString := DataModule2.CDSITENSPVDAITENS_CST.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_NCM').AsString := DataModule2.CDSITENSPVDAITENS_NCM.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('TRANSF_BOOL').AsInteger := 0;
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_TRIBDESC').AsString := DataModule2.CDSITENSPVDAIMPOSTO_TRIBDESC.AsString;
- { Limpo o editCodebar }
- Form1.EDCodebar.Clear;
- { Volto o foco para o EditCodebar }
- Form1.EDCodebar.SetFocus;
- { Grva o resultado na tabela da venda }
- TDtmVendas.CDSVENDA.Post;
- TDtmVendas.CDSVENDA.Locate('VENDA_NUMERO', DataModule1.INCQVENDA.FieldByName('gen_id').AsInteger, []);
- { Gravo o resultado na tabela itens da venda para poder mostrar commitar no banco }
- TDtmItensdaVenda.CDSITENS.Post;
- FactVendas.Metodosdavenda.TMemoVendas.Add(inttostr(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_POSICAOITEN').AsInteger) + ' ' +
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CODBARRAS').AsString + ' '
- + TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DESCPRODUTO').AsString + ' ' +
- FormatFloat('##,###,##0.00', TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').AsFloat) + ' ' +
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_UN').AsString + ' X ' + FormatFloat('##,###,##0.00',
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsFloat)
- + ' ' + FormatFloat('##,###,##0.00', TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_TOTAL').AsFloat));
- Form1.Edtqx.Clear;
- Form1.Edtqx.Text := '1';
- // Form1.DBGrid1.Columns.Items[0].Width := 1;
- // Form1.DBGrid1.Columns.Items[1].Width := Form1.Shape3.Width;
- // Form1.DBGrid1.Columns.Items[2].Width := Form1.Shape12.Width;
- // Form1.DBGrid1.Columns.Items[3].Width := Form1.Shape5.Width;
- // Form1.DBGrid1.Columns.Items[4].Width := Form1.Shape13.Width + 10;
- // Form1.DBGrid1.Columns.Items[5].Width := Form1.Shape6.Width;
- // Form1.DBGrid1.Columns.Items[6].Width := Form1.Shape4.Width;
- // Form1.DBGrid1.Columns.Items[7].Width := Form1.Shape7.Width;
- end;
- function CopyReverse(S: String; Index, Count: integer): String;
- begin
- Result := ReverseString(S);
- Result := Copy(Result, Index, Count);
- Result := ReverseString(Result);
- end;
- procedure TForm1.vendapelapesquisaprevda(Sender: TObject);
- var
- quantidadevenda: Double;
- begin
- Panelproibido.Visible := false;
- Timer3.Enabled := false;
- if DataModule1.CDSCADPRODCAD_VENDAPROIBIDAMEN.AsInteger = 0 then
- begin
- Panelproibido.Visible := false;
- end
- else if DataModule1.CDSCADPRODCAD_VENDAPROIBIDAMEN.AsInteger = 1 then
- begin
- Panelproibido.Visible := true;
- Timer3.Enabled := true;
- end;
- quantidadevenda := strtocurr(Form1.Edtqx.Text);
- { Aqui eu inicio uma nova transação com a tabela de itens da venda }
- DataModule2.CDSITENSPVDA.Append;
- DataModule2.CDSITENSPVDAITENS_SITUACAO.AsString := DataModule2.CDSPREVDAVENDA_SITUACAO.AsString;
- { Aqui eu pego a data e hora da inserção do iten na venda }
- DataModule2.CDSITENSPVDAITENS_DATAVENDA.AsDateTime := now;
- DataModule2.CDSITENSPVDAITENS_HORADAVENDA.AsDateTime := now;
- { Aqui eu pego o número da venda, gerado pelo autoincreento do banco da tabela CDSVENDA }
- DataModule2.CDSITENSPVDAVENDA_NUMERO.AsInteger := strtoint(Form1.edvdanumero.Text);
- { Aqui tragos as informações do iten da tabela CADPROD do Banco do PDV }
- DataModule2.CDSITENSPVDAITENS_CODBARRAS.AsString := DataModule1.CDSCADPRODCAD_CEAN13.AsString;
- DataModule2.CDSITENSPVDAITENS_DESCPRODUTO.AsString := DataModule1.CDSCADPRODCAD_NOMEDOPROD.AsString;
- DataModule2.CDSITENSPVDAITENS_IDPRODUTO.AsInteger := DataModule1.CDSCADPRODIDRELPROD.AsInteger;
- { Alimenta aqui os impostos }
- DataModule2.CDSITENSPVDAIMPOSTO_ICMSCST.AsString := DataModule1.CDSCADPRODSAID_CST.AsString;
- DataModule2.CDSITENSPVDAIMPOSTO_ICMSPICMS.AsFloat := DataModule1.CDSCADPRODSAID_TRIBUTACAOALIQ.AsFloat;
- DataModule2.CDSITENSPVDAIMPOSTO_TRIBDESC.AsString := DataModule1.CDSCADPRODSAID_TRIBUTACAO.AsString;
- DataModule2.CDSITENSPVDAITENS_CFOP.AsString := DataModule1.CDSCADPRODSAID_CFOP.AsString;
- DataModule2.CDSITENSPVDAITENS_NCM.AsString := DataModule1.CDSCADPRODENTR_NCM.AsString;
- DataModule2.CDSITENSPVDAITENS_CEST.AsString := DataModule1.CDSCADPRODENTR_CEST.AsString;
- DataModule2.CDSITENSPVDAMARCA.AsString := DataModule1.CDSCADPRODCAD_MARCACOMERCIAL.AsString;
- DataModule2.CDSITENSPVDAGRUPO.AsString := DataModule1.CDSCADPRODCAD_GRUPODOPROD.AsString;
- DataModule2.CDSITENSPVDASUBGRUPO.AsString := DataModule1.CDSCADPRODCAD_SUBGRUPODOPROD.AsString;
- DataModule2.CDSITENSPVDAidmarca.AsInteger := DataModule1.CDSCADPRODCAD_IDMARCACOMERCIAL.AsInteger;
- DataModule2.CDSITENSPVDAIDGRUPO.AsInteger := DataModule1.CDSCADPRODCAD_IDGRUPODOPROD.AsInteger;
- DataModule2.CDSITENSPVDAIDSUBGRUPO.AsInteger := DataModule1.CDSCADPRODCAD_IDSUBGRUPODOPROD.AsInteger;
- DataModule2.CDSITENSPVDAIDFORNECEDOR.AsInteger := DataModule1.CDSCADPRODCAD_IDFORNECEDORPROD.AsInteger;
- DataModule2.CDSITENSPVDAFORNECEDOR.AsString := DataModule1.CDSCADPRODCAD_FORNECEDORDOPROD.AsString;
- DataModule2.CDSITENSPVDAPDV_NUMERO.AsInteger := strtoint(DataModule2.CDSPREVDACAIXA_NUMERO.AsString);
- DataModule2.CDSITENSPVDAITENS_QUANTIDADE.AsFloat := quantidadevenda;
- DataModule2.CDSITENSPVDAITENS_VLUN.AsCurrency := DataModule1.CDSCADPRODSAID_VLVENDA.AsCurrency;
- if DataModule2.CDSITENSPVDAITENS_VLUN.AsCurrency <= 0 then
- begin
- Application.CreateForm(TForm19, Form19);
- Form19.Label2.Caption := DataModule2.CDSITENSPVDAITENS_DESCPRODUTO.AsString;
- Form19.showModal;
- end;
- DataModule2.CDSITENSPVDAITENS_TOTAL.AsFloat :=
- (DataModule2.CDSITENSPVDAITENS_QUANTIDADE.AsFloat * DataModule2.CDSITENSPVDAITENS_VLUN.AsFloat);
- { Valor de descontos no iten }
- DataModule2.CDSITENSPVDAitens_descvl.AsFloat := 0;
- DataModule2.CDSITENSPVDAitens_descpercent.AsFloat := 0;
- DataModule2.CDSITENSPVDAITENS_UN.AsString := DataModule1.CDSCADPRODSAID_UNVENDA.AsString;
- DataModule2.CDSITENSPVDAITENS_POSICAOITEN.AsInteger := Form1.DBgrid2.RowCount - 1;
- { Posiciona a tabela de vendas em edição }
- DataModule2.CDSPREVDA.Edit;
- { Alimento aqui o valor total da venda na tabela CDSVENDA }
- DataModule2.CDSPREVDAVENDA_VALORTOTAL.AsFloat := DataModule2.CDSPREVDAVENDA_VALORTOTAL.AsFloat +
- DataModule2.CDSITENSPVDAITENS_TOTAL.AsFloat;
- { Alimento aqui o valor da somatoria dos itens inseridos na venda somatoria }
- DataModule2.CDSPREVDAVENDA_VALORVENDA.AsFloat := DataModule2.CDSPREVDAVENDA_VALORVENDA.AsFloat +
- (DataModule2.CDSITENSPVDAITENS_QUANTIDADE.AsFloat * DataModule2.CDSITENSPVDAITENS_VLUN.AsFloat);
- { aqui eu conto os registros inseridos na tabela de itens e adiciono +1 }
- if pos(',', Floattostr(DataModule2.CDSITENSPVDAITENS_QUANTIDADE.Value)) > 0 then
- begin
- DataModule2.CDSPREVDAVENDA_NITENS.AsInteger := DataModule2.CDSPREVDAVENDA_NITENS.AsInteger + 1;
- end;
- if pos(',', Floattostr(DataModule2.CDSITENSPVDAITENS_QUANTIDADE.Value)) <= 0 then
- begin
- DataModule2.CDSPREVDAVENDA_NITENS.AsInteger := DataModule2.CDSPREVDAVENDA_NITENS.AsInteger +
- Round(DataModule2.CDSITENSPVDAITENS_QUANTIDADE.Value);
- end;
- { Cest/Nmc }
- DataModule2.CDSITENSPVDAITENS_CST.AsString := DataModule1.CDSCADPRODENTR_CEST.AsString;
- DataModule2.CDSITENSPVDAITENS_NCM.AsString := DataModule1.CDSCADPRODENTR_NCM.AsString;
- DataModule2.CDSITENSPVDATRANSF_BOOL.AsInteger := 0;
- { Limpo o editCodebar }
- EDCodebar.Clear;
- { Volto o foco para o EditCodebar }
- EDCodebar.SetFocus;
- { Grva o resultado na tabela da venda }
- DataModule2.CDSPREVDA.Post;
- DataModule2.CDSPREVDA.ApplyUpdates(0);
- DataModule2.CDSPREVDA.Refresh;
- DataModule2.CDSPREVDA.Locate('VENDA_NUMERO', DataModule2.INCQPREVDA.FieldByName('gen_id').AsInteger, []);
- { Gravo o resultado na tabela itens da venda para poder mostrar commitar no banco }
- DataModule2.CDSITENSPVDA.Post;
- DataModule2.CDSITENSPVDA.ApplyUpdates(0);
- DataModule2.CDSITENSPVDA.Refresh;
- Form1.Edtqx.Clear;
- Form1.Edtqx.Text := '1';
- Form1.DBgrid2.Columns.Items[0].Width := 1;
- Form1.DBgrid2.Columns.Items[1].Width := Shape3.Width;
- Form1.DBgrid2.Columns.Items[2].Width := Shape12.Width;
- Form1.DBgrid2.Columns.Items[3].Width := Shape5.Width;
- Form1.DBgrid2.Columns.Items[4].Width := Shape13.Width;
- Form1.DBgrid2.Columns.Items[5].Width := Shape6.Width;
- Form1.DBgrid2.Columns.Items[6].Width := Shape4.Width;
- Form1.DBgrid2.Columns.Items[7].Width := Shape7.Width;
- Form9.Close;
- end;
- procedure TForm1.vendapelapesquisa(Sender: TObject);
- var
- quantidadevenda: Double;
- vloupeso: string;
- vloupesoCV: currency;
- QutPesavel: currency;
- x: string;
- begin
- Panelproibido.Visible := false;
- Timer3.Enabled := false;
- if DataModule1.CDSCADPRODCAD_VENDAPROIBIDAMEN.AsInteger = 0 then
- begin
- Panelproibido.Visible := false;
- end
- else if DataModule1.CDSCADPRODCAD_VENDAPROIBIDAMEN.AsInteger = 1 then
- begin
- Panelproibido.Visible := true;
- Timer3.Enabled := true;
- end;
- quantidadevenda := strtocurr(Form1.Edtqx.Text);
- { Aqui eu inicio uma nova transação com a tabela de itens da venda }
- TDtmItensdaVenda.CDSITENS.Append;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_SITUACAO').AsString :=
- TDtmVendas.CDSVENDA.FieldByName('VENDA_SITUACAO').AsString;
- { Aqui eu pego a data e hora da inserção do iten na venda }
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DATAVENDA').AsDateTime := now;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_HORADAVENDA').AsDateTime := now;
- { Aqui eu pego o número da venda, gerado pelo autoincreento do banco da tabela CDSVENDA }
- TDtmItensdaVenda.CDSITENS.FieldByName('VENDA_NUMERO').AsInteger := strtoint(Form1.edvdanumero.Text);
- { Aqui tragos as informações do iten da tabela CADPROD do Banco do PDV }
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CODBARRAS').AsString := DataModule1.CDSCADPRODCAD_CEAN13.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DESCPRODUTO').AsString := DataModule1.CDSCADPRODCAD_NOMEDOPROD.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_IDPRODUTO').AsInteger := DataModule1.CDSCADPRODIDRELPROD.AsInteger; { Alimenta aqui os impostos }
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_ICMSCST').AsString := DataModule1.CDSCADPRODSAID_CST.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_ICMSPICMS').AsFloat := DataModule1.CDSCADPRODSAID_TRIBUTACAOALIQ.AsFloat;
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_TRIBDESC').AsString := DataModule1.CDSCADPRODSAID_TRIBUTACAO.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CFOP').AsString := DataModule1.CDSCADPRODSAID_CFOP.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_NCM').AsString := DataModule1.CDSCADPRODENTR_NCM.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CEST').AsString := DataModule1.CDSCADPRODENTR_CEST.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('MARCA').AsString := DataModule1.CDSCADPRODCAD_MARCACOMERCIAL.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('GRUPO').AsString := DataModule1.CDSCADPRODCAD_GRUPODOPROD.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('SUBGRUPO').AsString := DataModule1.CDSCADPRODCAD_SUBGRUPODOPROD.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('idmarca').AsInteger := DataModule1.CDSCADPRODCAD_IDMARCACOMERCIAL.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('IDGRUPO').AsInteger := DataModule1.CDSCADPRODCAD_IDGRUPODOPROD.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('IDSUBGRUPO').AsInteger := DataModule1.CDSCADPRODCAD_IDSUBGRUPODOPROD.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('IDFORNECEDOR').AsInteger := DataModule1.CDSCADPRODCAD_IDFORNECEDORPROD.AsInteger;
- TDtmItensdaVenda.CDSITENS.FieldByName('FORNECEDOR').AsString := DataModule1.CDSCADPRODCAD_FORNECEDORDOPROD.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('PDV_NUMERO').AsInteger :=
- strtoint(TDtmVendas.CDSVENDA.FieldByName('CAIXA_NUMERO').AsString);
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').AsFloat := quantidadevenda;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsCurrency := DataModule1.CDSCADPRODSAID_VLVENDA.AsCurrency;
- if TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsCurrency <= 0 then
- begin
- Application.CreateForm(TForm19, Form19);
- Form19.Label2.Caption := TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DESCPRODUTO').AsString;
- Form19.showModal;
- end;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_TOTAL').AsFloat :=
- (TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').AsFloat *
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsFloat);
- { Valor de descontos no iten }
- TDtmItensdaVenda.CDSITENS.FieldByName('itens_descvl').AsFloat := 0;
- TDtmItensdaVenda.CDSITENS.FieldByName('itens_descpercent').AsFloat := 0;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_UN').AsString := DataModule1.CDSCADPRODSAID_UNVENDA.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_POSICAOITEN').AsInteger := Form1.DBGrid1.RowCount - 1;
- { Posiciona a tabela de vendas em edição }
- //====================================================================================================================
- TDtmVendas.CDSVENDA.Edit;
- TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORVENDA').AsCurrency :=
- AcbrUtil.RoundABNT(TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORVENDA').AsCurrency +
- (TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').AsCurrency
- * TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsCurrency),2);
- { aqui eu conto os registros inseridos na tabela de itens e adiciono +1 }
- { Alimento aqui o valor total da venda na tabela CDSVENDA }
- TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORTOTAL').AsFloat :=
- AcbrUtil.RoundABNT(TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORVENDA').AsCurrency +
- TDtmVendas.CDSVENDA.FieldByName('VENDA_ACRESCIMOS').AsCurrency -
- TDtmVendas.CDSVENDA.FieldByName('VENDA_DESCONTOS').AsCurrency,2);
- { Alimento aqui o valor da somatoria dos itens inseridos na venda somatoria }
- if pos(',', Floattostr(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').Value)) > 0 then
- begin
- TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger :=
- TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger + 1;
- end;
- if pos(',', Floattostr(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').Value)) <= 0 then
- begin
- TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger := TDtmVendas.CDSVENDA.FieldByName('VENDA_NITENS').AsInteger +
- Round(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').Value);
- end;
- { Cest/Nmc }
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CST').AsString := DataModule1.CDSCADPRODENTR_CEST.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_NCM').AsString := DataModule1.CDSCADPRODENTR_NCM.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('TRANSF_BOOL').AsInteger := 0;
- TDtmItensdaVenda.CDSITENS.FieldByName('IMPOSTO_TRIBDESC').AsString := DataModule1.CDSCADPRODSAID_TRIBUTACAO.AsString;
- TDtmItensdaVenda.CDSITENS.FieldByName('IBPX_TFNACIONAL').AsCurrency := DataModule1.CDSCADPROD.FieldByName('IBPX_TFNACIONAL').AsCurrency;
- TDtmItensdaVenda.CDSITENS.FieldByName('IBPX_TFIMPORTADO').AsCurrency := DataModule1.CDSCADPROD.FieldByName('IBPX_TFIMPORTADO').AsCurrency;
- TDtmItensdaVenda.CDSITENS.FieldByName('IBPTX_ESTADUAL').AsCurrency := DataModule1.CDSCADPROD.FieldByName('IBPTX_ESTADUAL').AsCurrency;
- TDtmItensdaVenda.CDSITENS.FieldByName('IBPTX_MUINICIPAL').AsCurrency := DataModule1.CDSCADPROD.FieldByName('IBPTX_MUINICIPAL').AsCurrency;
- { Limpo o editCodebar }
- Form1.EDCodebar.Clear;
- { Volto o foco para o EditCodebar }
- Form1.EDCodebar.SetFocus;
- { Grava o resultado na tabela da venda }
- TDtmVendas.CDSVENDA.Post;
- //====================================================================================================================
- TDtmVendas.CDSVENDA.Locate('VENDA_NUMERO', DataModule1.INCQVENDA.FieldByName('gen_id').AsInteger, []);
- { Gravo o resultado na tabela itens da venda para poder mostrar commitar no banco }
- TDtmItensdaVenda.CDSITENS.Post;
- //===================================================================================================================
- FactVendas.Metodosdavenda.TMemoVendas.Add(inttostr(TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_POSICAOITEN').AsInteger) + ' ' +
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_CODBARRAS').AsString + ' ' +
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_DESCPRODUTO').AsString + ' ' +
- FormatFloat('##,###,##0.00', TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_QUANTIDADE').AsFloat) + ' ' +
- TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_UN').AsString + ' X ' +
- FormatFloat('##,###,##0.00', TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_VLUN').AsFloat)
- + ' ' + FormatFloat('##,###,##0.00', TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_TOTAL').AsFloat));
- Form1.Edtqx.Clear;
- Form1.Edtqx.Text := '1';
- Form9.Close;
- end;
- function TForm1.VideoAdjust(Form: TForm):Boolean;
- const
- ScreenWidth: LongInt = 1010; // número de pontos usado no desenvolvimento
- ScreenHeight: LongInt = 698; // número de pontos usado no desenvolvimento
- var
- i: integer;
- NewFormWidth, OldFormWidth: integer;
- begin
- if FFormAjustado = False then
- begin
- with Form do
- begin
- Result:= False;
- FFormAjustado:= Result;
- if Screen.Width = ScreenWidth then
- Exit;
- Scaled := true;
- Height := LongInt(Height) * LongInt(Screen.Height) DIV ScreenHeight;
- Width := LongInt(Width) * LongInt(Screen.Width) DIV ScreenWidth;
- ScaleBy(Screen.Width, ScreenWidth);
- // O tamanho da fonte dos objetos que tem essa propriedade deverá ser ajustado
- // Para usar GetPropInfo, deverá ser adicionado Uses TypInfo.
- for i := ComponentCount - 1 downto 0 do
- with components[i] do
- if GetPropInfo(ClassInfo, 'font') <> nil then
- Font.Size := (NewFormWidth DIV OldFormWidth) * Font.Size;
- Result:= true;
- FFormAjustado:= result;
- end; // with
- end;
- end;
- procedure TForm1.A1Click(Sender: TObject);
- begin
- Application.CreateForm(TForm4, Form4);
- Form4.FTipoPermissao := Aberturadegaveta;
- Form4.showModal;
- end;
- procedure TForm1.A2Click(Sender: TObject);
- begin
- if TLoadParamsSystem.aTLoadParamSystDataModel.DELIV_ABRECNSCLI <> 0 then begin
- if FrmPesquisaCodeBar = nil then begin
- FrmPesquisaCodeBar:= TFrmPesquisaCodeBar.Create(Application);
- end;
- FrmPesquisaCodeBar.showModal;
- end;
- end;
- procedure TForm1.AbriravendaClick(Sender: TObject);
- begin
- try
- FactVendas.Venda.StartVenda(TvarauxVendas1.ModoOperacao,Label22.caption);
- finally
- FactVendas.Venda.disposeOf;
- end;
- end;
- procedure TForm1.ACBrBAL1LePeso(Peso: Double; Resposta: AnsiString);
- begin
- TDtmItensdaVenda.AlimentaPesolido( Peso,ACBrBAL1 );
- end;
- procedure TForm1.ACBrSAT1EnviarDadosVenda(ADados: string; var ARetorno: string);
- begin
- Form1.Label22.Caption := UTF8Decode(TAcbrSatClassFactory.SatModelEquipdata.AcbrSat1.Resposta.mensagemRetorno);
- end;
- procedure TForm1.ACBrSAT1GetcodigoDeAtivacao(var Chave: AnsiString);
- begin
- Chave := TAcbrSatClassFactory.SatModelEquipdata.aSatModelData.aTSatModelEquipdata.EQUIP_CODATIVSAT;
- end;
- procedure TForm1.ACBrSAT1GetsignAC(var Chave: AnsiString);
- begin
- Satassinatura := AnsiString(TAcbrSatClassFactory.SatModelEquipdata.aSatModelData.aTSatModelEquipdata.SOFTH_ASSINATURASW);
- Chave := Satassinatura;
- end;
- procedure TForm1.ApplicationEvents1Exception(Sender: TObject; E: Exception);
- begin
- if pos('997', E.Message) <> 0 then
- begin
- Label22.Caption := 'Ecf em erro ou desligado,verifique';
- atividade(Sender);
- end;
- if pos('ACK', E.Message) <> 0 then
- begin
- Label22.Caption := 'Ecf em erro ou desligado,verifique';
- atividade(Sender);
- end;
- if pos('SAT', E.Message) <> 0 then
- begin
- Label22.Caption :=TAcbrSatClassFactory.SatModelEquipdata.AcbrSat1.RespostaComando;
- atividade(Sender);
- end;
- if pos('USB', E.Message) <> 0 then
- begin
- Label22.Caption := TAcbrSatClassFactory.SatModelEquipdata.AcbrSat1.RespostaComando;
- atividade(Sender);
- end;
- end;
- procedure TForm1.AtualizaBase1Click(Sender: TObject);
- var Factcarga:iFactCargatabelas; carga: TCargaTabelas;
- begin
- try
- try
- DtmConexao.TDtmConexao.InvokeTlCon;
- except
- on e: exception do begin
- label22.Caption:= DtmConexao.TDtmConexao.aMessage;
- end;
- end;
- finally
- //atualizatabela(sender);
- DataModule1.CDSCADPROD.ResourceOptions.SilentMode := False;
- try
- carga := TCargaTabelas.Create(nil,Gauge1,DataModule1.CDSUSER,
- DataModule2.cdscadprod,DataModule1.CDSCADPROD,DataModule2.CDSPROVUSER,Label22);
- finally
- // Factcarga:= TFacCargaTabelas.create;
- // FactCarga.CargaTabelasModel;
- end;
- end;
- end;
- procedure TForm1.B1Click(Sender: TObject);
- begin
- if TvarauxVendas1.ModoOperacao = ModpreVenda then
- begin
- If MessageDlg('Função disponível somente em modo vendas.', mterror, [mbOk], 0) = mrOk then
- begin
- end;
- end
- else if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then begin
- try
- Ativabalanca(Sender);
- Except
- MessageDlg('Sem Balança conectada', mterror, [mbOk], 0);
- end;
- end else
- MessageDlg('Primeiro a venda.', mterror, [mbOk], 0);
- end;
- end;
- procedure TForm1.BeforeDestruction;
- begin
- inherited BeforeDestruction;
- List.Objeto.ParametrosImpressora.DisposeOf;
- end;
- procedure TForm1.CaixaF11Click(Sender: TObject);
- begin
- Timer2.Enabled := false;
- Label22.Visible := true;
- if TvarauxVendas1.ModoOperacao = Modprevenda then begin
- MessageDlg('Função disponível somente em modo vendas.', mterror, [mbOk], 0);
- end else
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if TvarauxVendas1.StatusVenda = sitOcioso then begin
- Application.CreateForm(TForm4, Form4);
- Form4.FTipoPermissao := AcessoCaixa;
- // List.Objeto.LoginAcesso.Acessodest:= ftAcessoCaixa ;
- Form4.showModal;
- end else
- MessageDlg('Primeiro finalize a operação de venda em aberto!', mterror, [mbOk], 0);
- end;
- end;
- procedure TForm1.CancelaravendaClick(Sender: TObject);
- var
- buttonSelected: integer;
- begin
- Timer2.Enabled := false;
- Label22.Visible := true;
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- buttonSelected := MessageDlg('Deseja cancelar a venda?', mterror, mbOKCancel, 0);
- if buttonSelected = mrOk then
- begin
- Application.CreateForm(TForm4, Form4);
- Form4.FTipoPermissao := CancelamentodaVenda;
- try
- Form4.showModal;
- finally
- Form4.FreeOnRelease;
- end;
- end;
- if buttonSelected = mrCancel then
- begin
- mensagemlb22statusatual(Sender);
- end;
- end
- else if TvarauxVendas1.StatusVenda = sitOcioso then
- begin
- ShowMessage('PRIMEIRO ABRA UMA VENDA!');
- end;
- end
- else
- { aqui inicia o modo prevenda }
- if TvarauxVendas1.ModoOperacao = ModPreVenda then
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- buttonSelected := MessageDlg('Deseja cancelar a pre-venda?', mterror, mbOKCancel, 0);
- if buttonSelected = mrOk then
- begin
- { Localizar os itens e apagar a prevenda }
- DataModule2.IBCONSULTA.Close;
- DataModule2.IBCONSULTA.Open;
- DataModule2.IBQuery1.SQL.Clear;
- DataModule2.IBQuery1.SQL.Add
- ('delete from PREVENDA_ITENS where VENDA_NUMERO = :PvdNumero and PDV_NUMERO = :Pnumpdv');
- DataModule2.IBQuery1.ParamByName('PvdNumero').AsString := DataModule2.CDSPREVDAVENDA_NUMERO.AsString;
- DataModule2.IBQuery1.ParamByName('Pnumpdv').AsString := DataModule2.CDSPREVDACAIXA_NUMERO.AsString;
- DataModule2.IBQuery1.ExecSQL;
- DataModule2.IBTransaction1.CommitRetaining;
- DataModule2.IBQuery1.Close;
- DataModule2.IBCONSULTA.Close;
- DataModule2.CDSITENSPVDA.Close;
- DataModule2.CDSPREVDA.Delete;
- DataModule2.CDSPREVDA.ApplyUpdates(0);
- DataModule2.CDSPREVDA.Refresh;
- DataModule2.CDSPREVDA.Close;
- Form1.edvdanumero.Clear;
- Form1.edSituacao.Clear;
- Form1.EDCodebar.SetFocus;
- TVarAuxvendas.StatusVenda := SitOcioso;
- Form1.Label22.Caption := 'PRE-VENDA LIVRE';
- end;
- end else
- if TvarauxVendas1.StatusVenda = sitOcioso then begin
- ShowMessage('Primeiro abra uma venda!');
- end;
- end;
- end;
- procedure TForm1.D1Click(Sender: TObject);
- begin
- Application.CreateForm(TForm6, Form6);
- Form6.showModal;
- end;
- procedure TForm1.D2Click(Sender: TObject);
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then begin
- Application.CreateForm(TForm4, Form4);
- //List.Objeto.LoginAcesso.Acessodest := ftAplicaDescontoTotal;
- Form4.FTipoPermissao := AplicaDescontoTotalizador;
- try
- Form4.showModal;
- finally
- Form4.FreeOnRelease;
- end;
- // { Volto o foco para o EditCodebar }
- end;
- end;
- procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
- begin
- { abrir a tela de descontos }
- if (Key = #68) or (Key = #100) then
- begin
- Application.CreateForm(TForm4, Form4);
- // List.Objeto.LoginAcesso.Acessodest := ftAplicarDescontos;
- Form4.FTipoPermissao := Aplicardescontos;
- TDtmItensdaVenda.CDSITENS.Refresh;
- try
- Form4.showModal;
- finally
- Form4.Close;
- Form4.FreeOnRelease;
- end;
- end;
- if Key = #9 then begin
- EdCodeBar.setfocus;
- end;
- end;
- procedure TForm1.DBGrid1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
- begin
- if Key = VK_DELETE then
- begin
- if TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_SITUACAO').AsString = 'DL' then
- begin
- Timer2.Enabled := true;
- Label22.Caption := 'Produto ja cancelado da venda';
- EDCodebar.SetFocus;
- end
- else if TDtmItensdaVenda.CDSITENS.FieldByName('ITENS_SITUACAO').AsString <> 'DL' then
- begin
- Application.CreateForm(TForm4, Form4);
- // List.Objeto.LoginAcesso.Acessodest:= ftCancelaItensdaVenda;
- Form4.FTipoPermissao := CancelaItemdavenda;
- try
- Form4.showModal;
- finally
- Form4.DisposeOf;
- end;
- EDCodebar.SetFocus;
- end;
- end;
- end;
- procedure TForm1.DBgrid2KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
- begin
- if Key = VK_DELETE then
- begin
- cancelaitenprevenda(Sender);
- end;
- end;
- procedure TForm1.EDCodebarEnter(Sender: TObject);
- begin
- if (TopCaixa.TOperacionalCaixa.Caixa.Caixa.FieldByName('CAIXA_SITUACAO').AsString = 'FECHADO') or
- (TopCaixa.TOperacionalCaixa.Caixa.Caixa.FieldByName('CAIXA_SITUACAO').AsString = '')
- then
- begin
- Label22.Caption := 'CAIXA FECHADO';
- end
- else if (TopCaixa.TOperacionalCaixa.Caixa.Caixa.FieldByName('CAIXA_SITUACAO').AsString = 'ABERTO') then
- begin
- Label22.Caption := 'DIGITE OU PASSE O CODIGO DE BARRAS DO PRODUTO NA LEITORA.';
- EDCodebar.Clear;
- end
- else
- end;
- procedure TForm1.EDCodebarExit(Sender: TObject);
- begin
- TEdit(EdCodebar).Clear;
- end;
- function retirarZeros(texto: string): string;
- begin
- Result := texto;
- while (pos('0', Result) = 1) do
- begin
- Result := Copy(Result, 2, length(Result));
- end;
- end;
- procedure TForm1.EDCodebarKeyPress(Sender: TObject; var Key: Char);
- var i: integer; novastr, strxemx: String; strcodbar: string;
- codebal: string; vloupeso: string; vloupesoCV: currency; QutPesavel: currency;
- x: string;
- begin
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if NOT(Key IN ['0' .. '9', '-', #13, #68, #100, #77, #109]) then
- begin
- Key := #0;
- end;
- if Key = #13 then
- begin
- FCodeBar := EdCodeBar.Text;
- TDtmItensdaVenda.SituacaoLeituraBalanca := SemLeitura;
- TDtmItensdaVenda.Formataquantidadestr(Edtqx.Text);
- TDtmItensdaVenda.Gridtocontrol := DBGrid1;
- TDtmItensdaVenda.RetornaGenIdVenda(DataModule1.INCQVENDA);
- TDtmItensdaVenda.EdCodeBartocontrol := EdCodeBar;
- TDtmItensdaVenda.Labeltocontrol := Label22;
- TDtmItensdaVenda.Insereitensdavenda( TDtmItensdaVenda.CDSITENS,DataModule1.CDSCADPROD,TDtmVendas.CDSVENDA
- ,FCodeBar,Panelproibido,ACBrBAL1,DataModule1.CDSBAL );
- Label22.caption := TDtmItensdaVenda.MessageDisplay;
- EDCodebar.SelectAll;
- EDCodebar.ClearSelection;
- Edtqx.Clear;
- Edtqx.Text := '1';
- DBGrid1.Columns.Items[0].Width := 1;
- DBGrid1.Columns.Items[1].Width := Shape3.Width;
- DBGrid1.Columns.Items[2].Width := Shape12.Width;
- DBGrid1.Columns.Items[3].Width := Shape5.Width;
- DBGrid1.Columns.Items[4].Width := Shape13.Width;
- DBGrid1.Columns.Items[5].Width := Shape6.Width;
- DBGrid1.Columns.Items[6].Width := Shape4.Width;
- DBGrid1.Columns.Items[7].Width := Shape7.Width;
- end else
- if (Key = #77) or (Key = #109) then
- begin
- { Limpo o editCodebar }
- EDCodebar.Clear;
- { Volto o foco para o EditCodebar }
- EDCodebar.SetFocus;
- for i := 0 to MainMenu1.Items.Count - 1 do begin
- if MainMenu1.Items[i].Visible = true then
- begin
- MainMenu1.Items[i].Visible := false;
- end
- else
- MainMenu1.Items[i].Visible := true;
- case MainMenu1.Items[i].Visible of
- true: EDCodebar.Clear;
- false:EDCodebar.Clear;
- end;
- end;
- end;
- { abrir a tela de descontos }
- if (Key = #68) or (Key = #100) then
- begin
- if TvarauxVendas1.StatusVenda = sitOcioso then
- begin
- end
- else if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- case TvarauxVendas1.StatusVenda of
- Sitvendendo : EDCodebar.Clear;
- SitOcioso: EDCodebar.Clear;
- end;
- DBGrid1.SetFocus;
- EDCodebar.Clear;
- Label22.Caption := 'Selecione o produto para aplicar descontos!';
- end;
- end;
- end;
- end;
- procedure TForm1.EDCodebarKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
- begin
- if Key = VK_MULTIPLY then
- begin
- Form1.Edtqx.SetFocus;
- end;
- if Key = VK_DELETE then
- begin
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- Form1.DBGrid1.SetFocus;
- Label22.Caption := 'Selecione o produto á ser excluído!';
- end
- else if TvarauxVendas1.ModoOperacao = ModPreVenda then
- begin
- Form1.DBgrid2.SetFocus;
- Label22.Caption := 'Selecione o produto á ser excluído!';
- end;
- end;
- if Key = VK_BACK then
- begin
- EDCodebar.Clear;
- end;
- end;
- procedure TForm1.EdtqxKeyPress(Sender: TObject; var Key: Char);
- begin
- if not (key in ['0'..'9',',',#8,#13]) then begin
- key:=#0;
- end;
- if Key = #13 then
- begin
- EDCodebar.SetFocus;
- end;
- end;
- procedure TForm1.ExecutaLeituraxClick(Sender: TObject);
- begin
- Application.CreateForm(TForm4, Form4);
- acessotf := 3; // impressao leitura x
- Form4.showModal; // Chamar a senha gerencial
- end;
- procedure TForm1.FecharavendaClick(Sender: TObject);
- begin
- Timer2.Enabled := false;
- // Form6.showModal;
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if TDtmVendas.CDSVENDA.FieldByName('VENDA_SITUACAO').AsString = 'FECHADA' { ABERTA/FECHADA/CANCELADA/ESTORNADA/PENDENTE } then
- begin
- ShowMessage('Venda já fechada, inicie uma nova venda');
- end
- else if TDtmVendas.CDSVENDA.FieldByName('VENDA_SITUACAO').AsString = 'ABERTA' { ABERTA/FECHADA/CANCELADA/ESTORNADA/PENDENTE } then
- begin
- if not TDtmItensdaVenda.CDSITENS.IsEmpty then
- begin
- if TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORTOTAL').AsCurrency > 0 then
- begin
- Form1.VENDA_NUMERO := strtoint(TDtmVendas.CDSVENDA.FieldByName('VENDA_NUMERO').AsString);
- Label22.Caption := 'Recebendo a venda';
- FrmEscolhaPagamento:= TFrmEscolhaPagamento.Create(Application);
- FrmEscolhaPagamento.ShowModal;
- end
- else if TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORTOTAL').AsCurrency <= 0 then
- begin
- ShowMessage('O valor não pode ser 0,00 ou o numero de itens não pode ser zero');
- end;
- end
- else if TDtmItensdaVenda.CDSITENS.IsEmpty then
- begin
- ShowMessage('O valor não pode ser 0,00 ou o numero de itens não pode ser zero');
- end;
- end;
- if TDtmVendas.CDSVENDA.FieldByName('VENDA_SITUACAO').AsString = 'CANCELADA' { ABERTA/FECHADA/CANCELADA/ESTORNADA/PENDENTE } then
- begin
- ShowMessage('Venda cancelada, inicie uma nova venda');
- end;
- if TDtmVendas.CDSVENDA.FieldByName('VENDA_SITUACAO').AsString = 'ESTORNADA' { ABERTA/FECHADA/CANCELADA/ESTORNADA/PENDENTE } then
- begin
- ShowMessage('Venda ESTORNADA, inicie uma nova venda');
- end;
- end
- else
- if TvarauxVendas1.ModoOperacao = ModpreVenda then
- begin
- if DataModule1.CDSCONFSISTEMAMONITOR_CONECTED.AsString = 'TRUE' then
- begin
- if DataModule2.CDSPREVDAVENDA_VALORTOTAL.AsCurrency > 0 then
- begin
- List.HardwareColecoes.H_AcbrPosPrinter.Zerar; { Volto a impressora para seu estado 0 }
- DataModule2.CDSITENSPVDA.First;
- while not DataModule2.CDSITENSPVDA.Eof do
- begin
- FactVendas.Metodosdavenda.TMemoVendas.Add(inttostr(DataModule2.CDSITENSPVDAITENS_POSICAOITEN.AsInteger) + ' ' +
- DataModule2.CDSITENSPVDAITENS_CODBARRAS.AsString + ' ' + DataModule2.CDSITENSPVDAITENS_DESCPRODUTO.AsString
- + ' ' + FormatFloat('##,###,##0.00', DataModule2.CDSITENSPVDAITENS_QUANTIDADE.AsFloat) + ' ' +
- DataModule2.CDSITENSPVDAITENS_UN.AsString + ' X ' + FormatFloat('##,###,##0.00',
- DataModule2.CDSITENSPVDAITENS_VLUN.AsFloat) + ' ' + FormatFloat('##,###,##0.00',
- DataModule2.CDSITENSPVDAITENS_TOTAL.AsFloat));
- DataModule2.CDSITENSPVDA.Next;
- end;
- FactVendas.Metodosdavenda.TMemoVendas.Add('');
- FactVendas.Metodosdavenda.TMemoVendas.Add('</e></fn></fb>');
- FactVendas.Metodosdavenda.TMemoVendas.Add(' ');
- FactVendas.Metodosdavenda.TMemoVendas.Add('QTD ITENS = ' + FormatFloat('##,###,##0.00',
- DataModule2.CDSPREVDAVENDA_NITENS.AsFloat));
- FactVendas.Metodosdavenda.TMemoVendas.Add(' ');
- FactVendas.Metodosdavenda.TMemoVendas.Add(FrmEscolhaPagamento.Memo1.Text);
- FactVendas.Metodosdavenda.TMemoVendas.Add('<n><e>TOTAL R$ ' + FormatFloat('##,###,##0.00',
- DataModule2.CDSPREVDAVENDA_VALORTOTAL.AsFloat) + ' </e></n>');
- FactVendas.Metodosdavenda.TMemoVendas.Add('</lf> ');
- FactVendas.Metodosdavenda.TMemoVendas.Add('<ean13>' + Form1.edvdanumero.Text + ' </ean13> ');
- FactVendas.Metodosdavenda.TMemoVendas.Add('</fn><n><ce> PRE-VENDA ' + Form1.edvdanumero.Text + ' PDV N ' +
- DataModule2.CDSPREVDACAIXA_NUMERO.AsString + '</ce> </n></fb>');
- List.HardwareColecoes.H_AcbrPosPrinter.Imprimir(FactVendas.Metodosdavenda.TMemoVendas.Text);
- List.HardwareColecoes.H_AcbrPosPrinter.ImprimirLinha('</lf>');
- List.HardwareColecoes.H_AcbrPosPrinter.ImprimirLinha(List.Objeto.ParametrosImpressora.RetornaLista.ObjetoMiscelanias.CORTEPAPEL_STRING);
- DataModule2.CDSPREVDA.Edit;
- DataModule2.CDSPREVDAVENDA_SITUACAO.AsString := 'PREVENDA FECHADA';
- DataModule2.CDSPREVDA.Post;
- DataModule2.CDSPREVDA.ApplyUpdates(0);
- DataModule2.CDSPREVDA.Refresh;
- DataModule2.CDSPREVDA.Close;
- DataModule2.CDSITENSPVDA.Close;
- TVarAuxvendas.StatusVenda := SitOcioso;
- Form1.Label22.Caption := 'CAIXA LIVRE';
- end
- else
- if TDtmVendas.CDSVENDA.FieldByName('VENDA_VALORTOTAL').AsCurrency <= 0 then
- begin
- ShowMessage('O valor não pode ser 0,00 ou o numero de itens não pode ser zero');
- end
- else if TDtmItensdaVenda.CDSITENS.isEmpty then
- begin
- ShowMessage('O valor não pode ser 0,00 ou o numero de itens não pode ser zero');
- end;
- end
- else if DataModule1.CDSCONFSISTEMAMONITOR_CONECTED.AsString = 'FALSE' then
- begin
- if MessageDlg('Disponível apenas com servidor on-line, verifique a sua conexao.', mtConfirmation, [mbOk], 0) = mrOk
- then
- end;
- end;
- end;
- procedure TForm1.FormActivate(Sender: TObject);
- var i: integer; var Inicializa: TInicializacao;
- begin
- FFormAjustado := VideoAdjust(Form1);
- end;
- procedure KillProcess(hWindowHandle: HWND);
- var
- hprocessID: integer;
- processHandle: THandle;
- DWResult: DWORD;
- begin
- SendMessageTimeout(hWindowHandle, WM_CLOSE, 0, 0, SMTO_ABORTIFHUNG or SMTO_NORMAL, 5000, DWResult);
- if isWindow(hWindowHandle) then
- begin
- { Get the process identifier for the window }
- GetWindowThreadProcessID(hWindowHandle, @hprocessID);
- if hprocessID <> 0 then
- begin
- { Get the process handle }
- processHandle := OpenProcess(PROCESS_TERMINATE or PROCESS_QUERY_INFORMATION, false, hprocessID);
- if processHandle <> 0 then
- begin
- { Terminate the process }
- TerminateProcess(processHandle, 0);
- CloseHandle(processHandle);
- end;
- end;
- end;
- end;
- procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
- begin
- if TvarauxVendas1.StatusVenda = sitOcioso then
- begin
- {$IFDEF DEBUG}
- ReportMemoryLeaksOnShutDown := IsDebuggerPresent();
- {$ENDIF}
- cdsTemp.Close;
- FreeAndNil(FcdsTemp);
- PostMessage(FindWindow(nil, 'Pdvmonitor.exe'), WM_QUIT, 0, 0);
- { aqui alimenta a atividade do pdv para monitoramento do robo }
- DataModule1.CDSATIVIDADE.Open;
- DataModule1.CDSATIVIDADE.Edit;
- DataModule1.CDSATIVIDADEATIVIDADE.AsString := 'Aplicativo PDV Fechado no terminal';
- DataModule1.CDSATIVIDADE.Post;
- DataModule1.CDSATIVIDADE.ApplyUpdates(0);
- DataModule1.CDSATIVIDADE.Refresh;
- FatSaldoCliente.RenornaSaldoCliente.Free;
- TrayIcon1.BalloonHint := 'Aplicativo PDV Fechado no terminal';
- TrayIcon1.ShowBalloonHint;
- { fim }
- end
- else if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- If MessageDlg('Deseja fechar a aplicação?', mtConfirmation, [mbyes, mbno], 0) = mryes then
- begin
- Application.Terminate;
- ReleaseMutex( HMutex );
- end
- else
- Action := CANONE;
- end;
- List.destroilista;
- ListVendaMisc.destroilistavenda;
- if assigned ( FactVendas.Venda ) then
- begin
- FactVendas.Venda.disposeOf;
- end;
- end;
- procedure TForm1.FormCreate(Sender: TObject);
- Var
- FileName : PChar; Licencas: TVerLicenca;
- begin
- FactVendas := TFactVendas.create;
- Licencas := TVerLicenca.create;
- try
- Licencas.disparaLicenca;
- finally
- Licencas.disposeOf;
- end;
- FFormAjustado:= False;
- Label8.caption:= VersaoExe;
- FactoryGerarParcelas:= TFactoryGeraParcelas.create;
- end;
- procedure TForm1.FormShow(Sender: TObject);
- var i: integer;
- begin
- DataModule1.CDSCONFSISTEMA.Open;
- DataModule1.CDSCONFSISTEMA.Refresh;
- Self.DBGrid1.height:= ReturnVideo;
- begin
- for i := 0 to MainMenu1.Items.Count - 1 do
- MainMenu1.Items[i].Visible := not MainMenu1.Items[i].Visible;
- end;
- EDCodebar.SetFocus;
- TvarauxVendas1.StatusBal:= SitSemleituraBal;
- carregatheme(Sender);
- brush.Style := bsclear;
- Form1.Label22.Visible := true;
- { Carrega um clientdataset vritual para utilização na prevenda }
- cdsTemp := TClientDataSet.Create(nil);
- cdsTemp.Close;
- cdsTemp.FieldDefs.Clear;
- cdsTemp.FieldDefs.Add('PREVDA_NUMPREVDA', ftInteger);
- cdsTemp.FieldDefs.Add('PREVDA_NUMPDV', ftInteger);
- cdsTemp.CreateDataSet;
- { Fim }
- DataModule1.CDSCONFSISTEMA.Open;
- DataModule1.CDSCONFSISTEMA.Refresh;
- if (( LoadParamsSystemModel.TLoadParamsSystem.aTLoadParamSystDataModel.ModoOpAplication =
- LoadParamsSystDataModel.tpSat)) then
- begin
- try
- //iniciasat;
- TAcbrSatClassFactory.SatModelEquipdata.AcbrSat1.Extrato := List.Objeto.Central.RetornatpextratoSat;
- TAcbrSatClassFactory.OnGetStateSat;
- TAcbrSatClassFactory.SatModelEquipdata.AcbrSat1.Inicializar;
- Label22.Caption := TAcbrSatClassFactory.EstadoOperacional;
- Label22.Caption := TAcbrSatClassFactory.MensagemRetorno;
- Label20.Caption := TAcbrSatClassFactory.retConsultaSat;
- LbFabSn.Caption := TAcbrSatClassFactory.SNaparelho;
- lsStatuslansat.Caption := TAcbrSatClassFactory.StateLan;
- if TAcbrSatClassFactory.SatModelEquipdata.AcbrSat1.Resposta.codigoDeRetorno = 08000 then
- begin
- form1.statussat := 1;
- end;
- if TAcbrSatClassFactory.SatModelEquipdata.AcbrSat1.Resposta.codigoDeRetorno <> 08000 then
- begin
- form1.statussat := 0;
- end;
- Form1.DBEdit1.DataSource := TDtmVendas.DSVENDA;
- Form1.DBEdit7.DataSource := TDtmVendas.DSVENDA;
- Form1.DBEdit3.DataSource := TDtmVendas.DSVENDA;
- Form1.DBEdit2.DataSource := TDtmVendas.DSVENDA;
- Form1.DBEdit9.DataSource := TDtmVendas.DSVENDA;
- Form1.DBgrid2.Visible := false;
- Form1.DBGrid1.Visible := true;
- Topvendas.TVarAuxvendas.StatusVenda := SitOcioso;
- except
- EDCodebar.SetFocus;
- { ... uso da ProcLib }
- Topvendas.TVarAuxvendas.StatusVenda := SitOcioso;
- Label20.Caption := TRetornoMessage.SAT_INIMESAGE[1];
- TvarauxVendas1.StatusVenda := sitocioso;
- end;
- end else
- if (( LoadParamsSystemModel.TLoadParamsSystem.aTLoadParamSystDataModel.ModoOpAplication =
- LoadParamsSystDataModel.tpprevenda)) then
- begin
- try
- // carregaparamescpos;
- Label22.Caption := 'Modo de pré-vendas';
- Form1.DBEdit1.DataSource := DataModule2.DSPREVDA;
- Form1.DBEdit7.DataSource := DataModule2.DSPREVDA;
- Form1.DBEdit3.DataSource := DataModule2.DSPREVDA;
- Form1.DBEdit2.DataSource := DataModule2.DSPREVDA;
- Form1.DBEdit9.DataSource := DataModule2.DSPREVDA;
- Form1.DBgrid2.Visible := true;
- Form1.DBGrid1.Visible := false;
- TvarauxVendas1.StatusVenda := sitOcioso;
- except
- EDCodebar.SetFocus;
- { ... uso da ProcLib }
- Topvendas.TVarAuxvendas.StatusVenda := SitOcioso;
- end;
- end;
- Top := 0;
- Left := 0;
- Width := Screen.Width;
- Height := Screen.Height;
- EDCodebar.SetFocus;
- EDCodebar.Clear;
- Application.Restore;
- Application.BringToFront;
- // Verificação do status do caixa
- // Abre a tabela do caixa e seta o ponteiro para ultima posição
- Form1.DBGrid1.Columns.Items[0].Width := 1;
- Form1.DBGrid1.Columns.Items[1].Width := Shape3.Width;
- Form1.DBGrid1.Columns.Items[2].Width := Shape12.Width;
- Form1.DBGrid1.Columns.Items[3].Width := Shape5.Width;
- Form1.DBGrid1.Columns.Items[4].Width := Shape13.Width;
- Form1.DBGrid1.Columns.Items[5].Width := Shape6.Width;
- Form1.DBGrid1.Columns.Items[6].Width := Shape4.Width;
- Form1.DBGrid1.Columns.Items[7].Width := Shape7.Width;
- Form1.DBGrid1.DataSource := TDtmItensdaVenda.DSItens;
- TDtmItensdaVenda.CDSITENS.Close;
- Form1.BorderStyle := bsnone;
- Timer2.Enabled := false;
- { ... uso da ProcLib }
- //exibesitcaixa(Sender);
- abrepdvmonitor(Sender); // aqui abre o Pdvmonitor e seta para true;
- Form1.edNumpdv.Text := inttostr(TAcbrSatClassFactory.SatModelEquipdata.aSatModelData.PDV_NCAIXA);
- { ... fim do uso da ProcLib }
- DataModule1.IBCONSULTA.Connected := false;
- DataModule1.IBCONSULTA.DatabaseName := DataModule1.SQLMASTER.Params.Values['Database'];
- DataModule1.IBCONSULTA.Params.Add('User_Name=SYSDBA');
- DataModule1.IBCONSULTA.Params.Add('Password=1234');
- DataModule1.IBCONSULTA.Connected := true;
- Label22.Caption := TopCaixa.TOperacionalCaixa.Caixa.SituacaoCaixa;
- Form1.handle;
- Form1.EDCodebar.SetFocus;
- SetForegroundWindow(handle);
- if Topvendas.TVarAuxvendas.StatusVenda = SitOcioso then
- begin
- FactVendas.Venda.VerificaVendaAutomatica;
- end;
- end;
- procedure TForm1.I1Click(Sender: TObject);
- begin
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if TvarauxVendas1.StatusVenda = sitOcioso then
- begin
- Application.CreateForm(TForm4, Form4);
- List.Objeto.LoginAcesso.Acessodest:= ftReimprimeSatnaVenda;
- form4.showModal;
- // Form17.showModal;
- end;
- end
- else if TvarauxVendas1.ModoOperacao = ModPreVenda then
- begin
- MessageDlg('Função disponível somente em modo vendas.', mterror, [mbOk], 0);
- end;
- end;
- procedure TForm1.ImprimeExtrcliClick(Sender: TObject);
- begin
- if TvarauxVendas1.ModoOperacao = ModPreVenda then
- begin
- MessageDlg('Função disponível somente em modo vendas.', mterror, [mbOk], 0);
- end;
- end;
- procedure TForm1.L1Click(Sender: TObject);
- var ListaEntrega: TDeliveryFactoryClass;
- begin
- ListaEntrega := TDeliveryFactoryClass.Create;
- ListaEntrega.ListaEntrega;
- end;
- procedure TForm1.LimpaCodeBar;
- begin
- EDCodebar.ClearSelection;
- EDCodebar.ClearUndo;
- EdCodeBar.Text := '';
- end;
- procedure TForm1.M1Click(Sender: TObject);
- begin
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- TvarauxVendas1.ModoOperacao := ModpreVenda;
- TVarAuxvendas.StatusVenda := SitOcioso
- end
- else if TvarauxVendas1.ModoOperacao = ModpreVenda then
- begin
- TvarauxVendas1.ModoOperacao := ModVenda;
- end;
- end;
- procedure TForm1.MainMenu1Change(Sender: TObject; Source: TMenuItem; Rebuild: Boolean);
- begin
- Timer2.Enabled := false;
- Label22.Visible := true;
- Label22.Caption := 'SELECIONADO O MENU DO SISTEMA';
- end;
- procedure TForm1.N1Click(Sender: TObject);
- begin
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then begin
- Application.CreateForm(TForm3, Form3);
- Form3.showModal;
- end;
- end
- else
- If MessageDlg('Função disponível somente em modo vendas.', mterror, [mbOk], 0) = mrOk then
- end;
- procedure TForm1.P1Click(Sender: TObject);
- var FrmPesquisaClientes: TFrmPesquisaClientes;
- var Permissao: TForm4;
- begin
- FrmPesquisaClientes:= TFrmPesquisaClientes.create(Application);
- FrmPesquisaClientes.showModal;
- end;
- procedure TForm1.P2Click(Sender: TObject);
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- end
- else if TvarauxVendas1.StatusVenda = sitOcioso then
- begin
- Application.CreateForm(TForm4, Form4);
- Form4.FTipoPermissao := PesquisarVendas;
- try
- Form4.showModal;
- finally
- Form4.Close;
- Form4.FreeOnRelease;
- end;
- end;
- end;
- procedure TForm1.P3Click(Sender: TObject);
- begin
- if DataModule1.CDSCONFSISTEMAMONITOR_CONECTED.AsString = 'TRUE' then
- begin
- Application.CreateForm(TForm21, Form21);
- Form21.showModal;
- end
- else if DataModule1.CDSCONFSISTEMAMONITOR_CONECTED.AsString = 'FALSE' then
- begin
- if MessageDlg('Disponível apenas com servidor on-line, verifique a sua conexao.', mtConfirmation, [mbOk], 0) = mrOk
- then
- end;
- end;
- procedure TForm1.ProdutosF4Click(Sender: TObject);
- begin
- Application.CreateForm(TForm9, Form9);
- Timer2.Enabled := false;
- Label22.Visible := true;
- mensagemlb22statusatual(Sender);
- try
- Form9.showModal;
- finally
- Form9.DisposeOf;
- EDCodebar.SelectAll;
- EDCodebar.ClearSelection;
- Edtqx.Clear;
- Edtqx.Text := '1';
- end;
- end;
- procedure TForm1.R1Click(Sender: TObject);
- begin
- try
- DtmConexao.TDtmConexao.FDServidorConexao.Connected:= True;
- finally
- if DtmConexao.TDtmConexao.FDServidorConexao.Connected = True then
- begin
- if TvarauxVendas1.ModoOperacao = ModVenda then
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- Form23:= TForm23.Create(Application);
- Form23.showModal;
- end;
- end else
- MessageDlg(TTipo.tpMsgPDVToString(tpMsgErroRecebeFat), mtConfirmation, [mbOk], 0);
- end else
- MessageDlg(TTipo.tpMsgPDVToString(tpMsgSemConexaoServidor), mtConfirmation, [mbOk], 0);
- end;
- end;
- procedure TForm1.S1Click(Sender: TObject);
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- FactVendedorSel:= TfactComissao.create;
- FactVendedorSel.createModel;
- FactVendedorSel.VendedorselModel.ConstructionQuery;
- if not FactVendedorSel.VendedorselModel.TBSelVendedor.isempty then
- begin
- FactVendedorSel.VendedorselModel.NumerodaVenda:= inttostr( TdtmVendas.NumeroVenda );
- FactVendedorSel.CreateFrmSelVendedor;
- end else
- MessageDlg('Não existem vendedores cadastrados', mterror, [mbOk], 0);
- end else
- MessageDlg('Primeiro inicie uma venda!', mterror, [mbOk], 0);
- end;
- procedure TForm1.SairdosistemaClick(Sender: TObject);
- var MainHandle : THandle;
- begin
- if TvarauxVendas1.StatusVenda = sitVendendo then
- begin
- end else
- if TvarauxVendas1.StatusVenda = sitOcioso then begin
- { aqui alimenta a atividade do pdv para monitoramento do robo }
- TrayIcon1.BalloonHint := 'Aplicativo PDV Fechado no terminal';
- TrayIcon1.ShowBalloonHint;
- { fim }
- begin
- try
- MainHandle := OpenProcess(PROCESS_ALL_ACCESS, false, GetCurrentProcessID) ;
- SetProcessWorkingSetSize(MainHandle, $FFFFFFFF, $FFFFFFFF) ;
- CloseHandle(MainHandle) ;
- except
- end;
- Application.ProcessMessages;
- end;
- Application.Terminate;
- end;
- end;
- procedure TForm1.T3Click(Sender: TObject);
- var Factcarga:iFactCargatabelas;
- begin
- Factcarga:= TFacCargaTabelas.create;
- Factcarga.TransfereMovimentacao.TranfereCarga(Gauge1);
- end;
- procedure TForm1.Timer2Timer(Sender: TObject);
- begin
- With Label22 do
- Visible := not Visible;
- end;
- procedure TForm1.Timer3Timer(Sender: TObject);
- begin
- Panelproibido.Visible := false;
- Timer3.Enabled := false;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement