예제 #1
0
파일: ECFTest.cs 프로젝트: njmube/openposbr
        public void ReducaoZ()
        {
            using (ICupomFiscal cf = new CupomFiscal())
            {
                #region Dados do cupom fiscal
                string cnpj = string.Empty;
                string nome = string.Empty;
                string endereco = string.Empty;

                string codProd = "00001";
                string descricaoProd = "Caneta Azul";
                string aliquota = "I";
                double qtde = 10;
                double vlrUnit = new Random().NextDouble();
                double desc = 0;
                string un = "UN";
                string tipoDesc = "%";
                string descAcre = "D";
                int codDepto = -1;
                double valor = qtde * vlrUnit;
                bool vinculado = false;

                string obs = "Imprime esse texto no cupom fiscal";
                string codFormaPagto = string.Empty;

                FormaPagamento[] formaPagtos = cf.FormasPagamento;

                for (int i = 0; i < 1; i++)
                {
                    codFormaPagto = formaPagtos[i].Indice;
                }

                cf.AbreCupom(cnpj, nome, endereco);
                cf.VendeItem(codProd, descricaoProd, aliquota, (decimal)qtde, (decimal)vlrUnit, (decimal)desc, un, tipoDesc, descAcre, codDepto);
                cf.SubTotalizaCupom((decimal)desc, obs);
                cf.EfetuaPagamento(codFormaPagto, (decimal)valor, obs, vinculado);
                cf.FechaCupom(obs);
                #endregion

                //Faz a impressão da Redução Z
                using (IRelatorioFiscal rf = new RelatorioFiscal())
                {
                    //Para imprimir a Redução Z, altere o valor dessa variável para "true"
                    bool imprimeReducao = false;

                    //Data da movimentação
                    DateTime dataMovimentacao = DateTime.Now;

                    if (imprimeReducao)
                        rf.ReducaoZ(dataMovimentacao);
                }
            }
        }
예제 #2
0
 /// <summary>
 /// Evento click do botão de redução Z de fechamento de caixa
 /// </summary>
 /// <param name="sender">objeto que disparou o evento</param>
 /// <param name="e">parametros do evento</param>
 private void button1_Click(object sender, EventArgs e)
 {
     #region Redução Z
     DialogResult result = OpenPOS.MessageBox.AskYesNo("Após emitida não será possivel efetuar nenhuma movimentação na ECF neste dia!\r\n Deseja realmente emitir a Redução Z?",
         "Importante", MessageBoxDefaultButton.Button2);
     if(result == DialogResult.Yes)
     {
         IRelatorioFiscal reducao = new RelatorioFiscal(Settings.ECF.ECFAtual.ModeloACBR, Settings.ECF.ECFAtual.Porta);
         reducao.ReducaoZ();
     }
     #endregion
 }