/// <summary> /// Exibe a caixa de mensagem de seleção de período entre datas /// </summary> /// <returns></returns> public static InformaAliquotaResult Show() { frmNovaAliquota f = new frmNovaAliquota(); DialogResult result = f.ShowDialog(); if (result == DialogResult.OK) { using (IConfiguracao conf = new Configuracao(Settings.ECF.ECFAtual.ModeloACBR, Settings.ECF.ECFAtual.Porta)) { try { conf.ProgramaAliquota(f.mkNumberValorAliquota.Value, f.ICMS ? "T" : "S"); conf.CarregaAliquotas(); } catch (Exception ex) { MessageBox.ShowError(ex, false); return new InformaAliquotaResult("", 0.0, false); } } } f.Close(); return new InformaAliquotaResult( f.ICMS ? "T" : "S", f.mkNumberValorAliquota.Value, result == DialogResult.OK ? true : false ); }
/// <summary> /// Popula a grid com as alíquotas presentes na impressora fiscal e as da aplicação /// </summary> /// <returns>Se true, foi populado corretamente</returns> public override bool InitStep() { bool result = base.InitStep(); IList<object[]> sourceVinculo = new List<object[]>(); IList<object[]> sourceVinculado = new List<object[]>(); IList<IAliquotaTributo> aliqTrib = new AliquotaTributo().Find<IAliquotaTributo>(); if (result) { try { using (IConfiguracao conf = new Configuracao()) { foreach (ACBrFramework.ECF.Aliquota aliquotaECF in conf.LerAliquotas()) { if (aliquotaECF.Tipo == "T") { sourceVinculo.Add(new object[] { string.Empty, aliquotaECF.Indice, string.Format("{0}{1:0000}", aliquotaECF.Tipo, aliquotaECF.ValorAliquota.ToString("00.00")), }); } else { sourceVinculo.Add(new object[] { string.Empty, aliquotaECF.Indice, string.Format("{0}{1:0000}", aliquotaECF.Tipo, aliquotaECF.ValorAliquota.ToString("00.00")) }); } } } foreach (IAliquotaTributo aliquota in aliqTrib) { sourceVinculado.Add(new object[] { aliquota.GUID.ToString(), aliquota.Valor }); } confECF.PopulateGrid(sourceVinculo, sourceVinculado); } catch (Exception ex) { MessageBox.ShowError(ex, false); } } return result; }
public void CadastraTotalizadorNaoFiscal() { using (IConfiguracao conf = new OpenPOS.ECF.Configuracao(ModeloECF.Bematech, "COM7")) { string obs = "Suprimento"; conf.CadastraTotalizadorNaoFiscal(obs, ""); } using (IRelatorioFiscal rf = new RelatorioFiscal(ModeloECF.Bematech, "COM7")) { rf.LeituraX(); } }
private void buttonOK_Click(object sender, System.EventArgs e) { DialogResult = System.Windows.Forms.DialogResult.None; if (OpenPOS.MessageBox.AskYesNo("Cadastrar uma aliquota na Impressora Fiscal - ECF é uma tarefa irreversível. Deseja continuar?", "Cadastrar Alíquota", MessageBoxDefaultButton.Button2) == DialogResult.Yes) { if (rdbtnICMS.Checked && rdBtnServico.Checked) { MessageBox.RequiredField(rdbtnICMS, "Tipo da Aliquota"); return; } if (mkNumberValorAliquota.Value <= 0.0) { MessageBox.RequiredField(mkNumberValorAliquota, "Valor da Aliquota"); return; } using (IConfiguracao conf = new Configuracao(Settings.ECF.ECFAtual.ModeloACBR, Settings.ECF.ECFAtual.Porta)) { if (conf.Aliquotas.Where(k => (((k.Indice.StartsWith("T") && rdbtnICMS.Checked) || (k.Indice.StartsWith("S") && rdBtnServico.Checked)) && k.ValorAliquota == Unimake.Convert.ToDecimal(mkNumberValorAliquota.Value))).Count() > 0) { MessageBox.RequiredField(rdbtnICMS, "Indice ou Aliquota não podem ser iguais a alguma já cadastrada"); return; } } DialogResult = System.Windows.Forms.DialogResult.OK; Hide(); } else buttonCancelar.PerformClick(); }
public void ProgramarFormaPagamento() { //Descrição da forma de pagamento string descricao = "Cheque"; //Permite o cupom vinculado bool permiteVinculado = false; //Posição da forma de pagamento string posicao = ""; try { using (IConfiguracao conf = new OpenPOS.ECF.Configuracao()) { conf.ProgramaFormaPagamento(descricao, permiteVinculado, posicao); WriteLine("Forma de pagamento cadastrada com sucesso."); } } catch (Exception ex) { WriteLine(ex.Message); } }
public void ProgramarAliquota() { //Valor da alíquota a ser cadastrada double aliquota = 1.00; //Tipo da alíquota a ser cadastrada: "T" para ICMS ou "S" para ISSQN string tipo = "T"; //posição da alíquota: passa vazio, pois o componente indicará a posição string posicao = ""; try { using (IConfiguracao conf = new OpenPOS.ECF.Configuracao()) { conf.ProgramaAliquota(aliquota, tipo, posicao); WriteLine("Alíquota cadastrada com sucesso."); } } catch (Exception ex) { WriteLine(ex.Message); } }
public void MudarArredondamento() { using (IConfiguracao conf = new OpenPOS.ECF.Configuracao()) { conf.MudaArredondamento(true); WriteLine("Arredondamento configurado com sucesso."); } using (IConfiguracao conf = new OpenPOS.ECF.Configuracao()) { conf.MudaArredondamento(false); WriteLine("Truncamento configurado com sucesso."); } }
public void MudaHorarioVerao() { using (IConfiguracao conf = new OpenPOS.ECF.Configuracao()) { conf.MudaHorarioVerao(); WriteLine("Horário de verão configurado com sucesso."); } }
public void GrandeTotal() { using (IConfiguracao conf = new OpenPOS.ECF.Configuracao()) { Assert.IsTrue(conf.GrandeTotal > 0); WriteLine("Grande total do dia do ECF recuperado com sucesso."); } }
/// <summary> /// Popula a grid com as alíquotas cadastradas na impressora fiscal /// </summary> private void Populate() { Wait.Show(); IList<object[]> sourceVinculo = new List<object[]>(); IList<object[]> sourceVinculado = new List<object[]>(); IList<IAliquotaTributo> aliqTributos = new AliquotaTributo().Find<IAliquotaTributo>(); IList<IAliquota> aliquotas = new Aliquota().Find<IAliquota>(new Where { { "ecf_aliquota.guidimpressora = @guid", new Parameter { ParameterName = "@guid", Value = Settings.ECF.ECFAtual.GUID.ToString() } } }); try { //Acessando a impressora fiscal para buscar quais as alíquotas cadastradas using (IConfiguracao conf = new Configuracao(Settings.ECF.ECFAtual.ModeloACBR, Settings.ECF.ECFAtual.Porta)) { var aliquotasECF = (from a in conf.LerAliquotas() select a); foreach (ACBrFramework.ECF.Aliquota item in aliquotasECF) { IAliquota aliquota = aliquotas.FirstOrDefault(f => f.Indice.ToString().Trim().Equals(item.Indice)); if (item.Tipo.Equals("T")) { sourceVinculo.Add(new object[] { aliquota == null ? "" : aliquota.TributoAliquota.GUID.ToString(), item.Indice, string.Format("T{0:0000}", item.ValorAliquota.ToString("00.00")), }); } else { sourceVinculo.Add(new object[] { aliquota == null ? "" : aliquota.TributoAliquota.GUID.ToString(), item.Indice, string.Format("S{0:0000}", item.ValorAliquota.ToString("00.00")), }); } } foreach (IAliquotaTributo aliqTrib in aliqTributos) { sourceVinculado.Add(new object[] { aliqTrib.GUID.ToString(), aliqTrib.Valor.ToString() }); } } //Popula a grid com as alíquotas do ECF e as que serão vinculadas confECF.PopulateGrid(sourceVinculo, sourceVinculado); } catch (Exception ex) { MessageBox.ShowError(ex, false); } Wait.Close(); }
/// <summary> /// Cadastra uma alíquota de ICMS ou ISSQN na impressora fiscal /// </summary> /// <param name="sender">Objeto que disparou o evento</param> /// <param name="e">Argumentos do evento gerado</param> private void GrdMain_AddClick(object sender, EventArgs e) { InformaAliquotaResult result = OpenPOS.NovaAliquota.Show(); if (result.OK) { using (IConfiguracao conf = new Configuracao(Settings.ECF.ECFAtual.ModeloACBR, Settings.ECF.ECFAtual.Porta)) { confECF.GrdMain.Rows.Add(new object[] { string.Empty, conf.Aliquotas.LastOrDefault().Indice, string.Format(result.Indice.Contains("S") ?"S{0:0000}":"T{0:0000}" , result.Aliquota.ToString("00.00")) }); }; } }