0
I’m having problems with the non fiscal thermal printer in relation to the paper cut made by the guillotine.
Let me give you an example:
Today the printer is printing normal, but does not trigger the automatic guillotine cutting the paper.
I tried to add the DLL, but it is giving error. Follow code of the project.
Class
public class MP2032
{
[DllImport("MP2032.dll", CallingConvention = CallingConvention.Cdecl)]
public static extern int AcionaGuilhotina(int parcial_full);
}
Main
private void ImprimeImpressora(string codigoPedido)
{
#region BUSCAR DADOS
DataTable dtEmpresa = BuscarEmpresa(codigoPedido);
DataTable dtCliente = BuscarCliente(codigoPedido);
DataTable dtProduto = BuscarProduto(codigoPedido);
DataTable dtPedido = BuscarPedido(codigoPedido);
if (dtProduto.Rows.Count == 0)
{
MessageBox.Show("Pedido não possui produtos.");
return;
}
#endregion
// Imprimir(codigoPedido);
ImprimeTexto imp = new ImprimeTexto();
imp.SetarFonte("Arial", 5);
imp.Inicio("LPT1");
imp.ImpLF(dtEmpresa.Rows[0]["d006_nome_empresa"].ToString());
imp.ImpLF(dtEmpresa.Rows[0]["d006_endereco"].ToString() + "," + dtEmpresa.Rows[0]["D006_NUM"].ToString() + " - " + dtEmpresa.Rows[0]["d006_bairro"].ToString());
imp.ImpLF(dtEmpresa.Rows[0]["d006_cidade"].ToString() + " - " + dtEmpresa.Rows[0]["d006_uf"].ToString() + " (" + dtEmpresa.Rows[0]["D006_DDD"].ToString() + ")" + dtEmpresa.Rows[0]["D006_TELEFONE1"].ToString());
imp.ImpLF("==========================================");
if (dtPedido.Rows[0]["D007_TIPO_MOVIMENTO"].ToString() == "P")
imp.ImpLF("Numero Pedido: " + codigoPedido);
else
imp.ImpLF("Numero Orcamento: " + codigoPedido);
imp.ImpLF("Vendedor.....: " + dtPedido.Rows[0]["D024_NOME"].ToString());
imp.ImpLF("Data / Hora..: " + dtPedido.Rows[0]["D007_DATA_HORA_DIGITACAO"].ToString());
imp.ImpLF("------------------------------------------");
imp.ImpLF(imp.Comprimido + "CLIENTE" + imp.Normal);
imp.ImpLF(dtCliente.Rows[0]["D022_CLIENTE_ID"].ToString() + " - " + dtCliente.Rows[0]["D007_NOME"].ToString());
imp.ImpLF(dtCliente.Rows[0]["D022_ENDERECO"].ToString() + "," + dtCliente.Rows[0]["D022_NUMERO"].ToString());
imp.ImpLF(dtCliente.Rows[0]["D022_BAIRRO"].ToString() + " - " + dtCliente.Rows[0]["D022_CIDADE"].ToString() + " (" + dtCliente.Rows[0]["D022_DDD"].ToString() + ")" + dtCliente.Rows[0]["D022_FONE1"].ToString());
imp.ImpLF("------------------------------------------");
imp.ImpCol(00, "COD");
imp.ImpCol(06, "UN");
imp.ImpColLF(8, "Descricao");
imp.ImpCol(8, "Quantidade"); //8
imp.ImpCol(11, "Vlr Unitario");
imp.ImpColLF(29, "Vlr Total"); //33
imp.ImpLF("------------------------------------------");
for (int i = 0; i < dtProduto.Rows.Count; i++)
{
imp.ImpCol(00, dtProduto.Rows[i]["d002_codigo_produto"].ToString());
imp.ImpCol(06, dtProduto.Rows[i]["d008_unidade_medida"].ToString());
imp.ImpColLF(8, dtProduto.Rows[i]["d002_descricao"].ToString());
imp.ImpCol(8, dtProduto.Rows[i]["d008_quantidade2"].ToString());
if (dtProduto.Rows[i]["d002_preco_venda"].ToString() == "")
imp.ImpCol(16,"0");
else
imp.ImpCol(16, double.Parse(dtProduto.Rows[i]["d002_preco_venda"].ToString()).ToString("n2"));
imp.Pula(1);
}
imp.Pula(1);
//imp.ImpLF("------------------------------------------");
//imp.ImpCol(00, "Desc..:" + double.Parse(dtPedido.Rows[0]["D007_DESCONTO_GLOBAL"].ToString()).ToString("n2"));
//imp.ImpCol(13, "Frete..:" + double.Parse(dtPedido.Rows[0]["D007_VALOR_FRETE"].ToString()).ToString("n2"));
imp.ImpColLF(29, "Total..:" + double.Parse(dtPedido.Rows[0]["D007_TOTAL_PEDIDO"].ToString()).ToString("n2"));
imp.ImpLF("------------------------------------------");
imp.ImpLF("Forma de Pagamento: " + dtPedido.Rows[0]["D082_DESCRICAO"].ToString());
imp.ImpLF("------------------------------------------");
imp.ImpColLF(10, "OBRIGADO E VOLTE SEMPRE!");
imp.ImpLF("------------------------------------------");
imp.ImpColLF(10,"<<DOCUMENTO NAO FISCAL>>");
imp.ImpColLF(9,"<<NAO SERVE COMO GARANTIA>>");
imp.ImpLF("==========================================");
imp.Pula(10);
imp.Fim();
MP2032.AcionaGuilhotina(1);
MessageBox.Show("Impressão realizada com sucesso.");
}
Error message on execution:
Consulte o final desta mensagem para obter detalhes sobre como chamar a
depuração just-in-time (JIT) em vez desta caixa de diálogo.
************** Texto de Exceção **************
System.Configuration.ConfigurationErrorsException: O sistema de configuração falhou ao inicializar ---> System.Configuration.ConfigurationErrorsException: Apenas um elemento <configSections> é permitido por arquivo de configuração e, se presente, deve ser o primeiro filho do elemento <configuration> raiz. (C:\s-commerce\apls\ProjetoAux.exe.Config line 4)
em System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal)
em System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(ConfigurationSchemaErrors schemaErrors)
em System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey)
--- Fim do rastreamento de pilha de exceções internas ---
em System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey)
em System.Configuration.ClientConfigurationSystem.PrepareClientConfigSystem(String sectionName)
em System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.RefreshConfig(String sectionName)
em System.Configuration.ClientSettingsStore.ReadSettings(String sectionName, Boolean isUserScoped)
em System.Configuration.LocalFileSettingsProvider.GetPropertyValues(SettingsContext context, SettingsPropertyCollection properties)
em System.Configuration.SettingsBase.GetPropertiesFromProvider(SettingsProvider provider)
em System.Configuration.SettingsBase.GetPropertyValueByName(String propertyName)
em System.Configuration.SettingsBase.get_Item(String propertyName)
em System.Configuration.ApplicationSettingsBase.GetPropertyValue(String propertyName)
em System.Configuration.ApplicationSettingsBase.get_Item(String propertyName)
em ProjetoAux.Properties.Settings.get_FbConexao()
em ProjetoAux.ImpressaoNaoFiscalLPT.BuscarEmpresa(String codigoPedido)
em ProjetoAux.ImpressaoNaoFiscalLPT.ImprimeImpressora(String codigoPedido)
em ProjetoAux.ImpressaoNaoFiscalLPT._btnImpressao_Click(Object sender, EventArgs e)
em System.Windows.Forms.Control.OnClick(EventArgs e)
em System.Windows.Forms.Button.OnClick(EventArgs e)
em System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
em System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
em System.Windows.Forms.Control.WndProc(Message& m)
em System.Windows.Forms.ButtonBase.WndProc(Message& m)
em System.Windows.Forms.Button.WndProc(Message& m)
em System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Assemblies Carregados **************
mscorlib
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ProjetoAux
Versão do Assembly: 1.0.0.0
Versão do Win32: 1.0.0.0
Base de Código: file:///C:/s-commerce/apls/ProjetoAux.exe
----------------------------------------
System.Windows.Forms
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Accessibility
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
System.Data
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Core
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
FirebirdSql.Data.FirebirdClient
Versão do Assembly: 3.0.2.0
Versão do Win32: 3.0.2.0
Base de Código: file:///C:/s-commerce/apls/FirebirdSql.Data.FirebirdClient.DLL
----------------------------------------
System.Transactions
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.Configuration
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Configuration.resources
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration.resources/v4.0_4.0.0.0_pt-BR_b03f5f7f11d50a3a/System.Configuration.resources.dll
----------------------------------------
System.Windows.Forms.resources
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_pt-BR_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
mscorlib.resources
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.79.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_pt-BR_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
************** Depuração JIT **************
Para habilitar a depuração just-in-time (JIT), o arquivo .config deste
aplicativo ou computador (machine.config) deve ter o valor
jitDebugging definido na seção system.windows.forms.
O aplicativo também deve ser compilado com a depuração
habilitada.
Por exemplo:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
Quando a depuração JIT está habilitada, qualquer exceção sem tratamento
será enviada ao depurador JIT registrado no computador,
em vez de ser tratada nesta caixa de diálogo.
Washington Guilherme, post the code itself, thus hinders the visualization of it.
– Marco Souza
Enter the code, the image makes it difficult for anyone to help you because you can’t edit and test your code. Read here to learn more about how to ask.
– gato
Post the error that you are getting tbm.
– gato
I managed to solve this step. By downloading the DLL from the Bematech website and configuring the DLL for the program.
– Washington Guilherme
@Washingtonguilherme Voce can post an answer to your question, so you will help people who have the same problem you had.
– andrepaulo