Error de MGW000.DLL tras agregar movimientos a facturas. #65
-
Buen dia, se me ha presentado un error cada que intento cerrar empresa/terminar sdk al meter una factura a contpaqi con sus movimientos. La factura se ingresa correctamente y sus movimientos tambien, pero al finalizar ese proceso me lanza dos alertas de error. 1.- "Abnormal program termination" Esto le ocasionó al cliente que se le cerrara la aplicacion por completo. El cliente la abria nuevamente para seguir facturando y con cada factura que generaba pasaba el mismo problema. El codigo es una calca del que se presenta como ejemplo aca, utilizando el IHOST y los repositories. Después de hacer ese proceso en repetidas ocasiones, conpaqi ya no le dejo crear facturas e incluso el mismo contpaqi dejo de funcionar, mostrando el siguiente error al intentar abrirle: "CACSql.dll" ¿Tendrás conocimiento de este error?, ¿cual seria la razon de que no permitiera cerrar la conexion adecuadamente?. La unica diferencia que tengo en mi codigo con el propuesto aca como ejemplo para generar facturas es que se agrego un try-catch-finally: Inicia host ¿Hay algun consejo que me pudieras dar? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
Te comparto un ejemplo del código en el proyecto IHost host = Host.CreateDefaultBuilder()
.ConfigureServices(services =>
{
services.AddContpaqiComercialSdkServices();
services.AddEjemplos();
})
.ConfigureLogging(builder => { builder.ClearProviders(); })
.UseSerilog((_, loggerConfiguration) =>
{
loggerConfiguration.MinimumLevel.Information()
.MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
.MinimumLevel.Override("Microsoft.Hosting.Lifetime", LogEventLevel.Information);
loggerConfiguration.WriteTo.Console(LogEventLevel.Information);
})
.Build();
await host.StartAsync();
var logger = host.Services.GetRequiredService<ILogger<Program>>();
try
{
var iniciarSesion = host.Services.GetRequiredService<IniciarSesion>();
iniciarSesion.IniciarConParametros();
var abrirEmpresa = host.Services.GetRequiredService<AbrirEmpresa>();
abrirEmpresa.Abrir();
// 1. Busca la clase con los ejemplos que quieras probar utilizando el proveedor de servicios.
// 2. Ejecuta el metodo que quieras probar.
var ejemplo = host.Services.GetRequiredService<CrearFactura>();
ejemplo.Crear();
}
catch (Exception e)
{
logger.LogCritical(e, "Ocurrio un error");
}
finally
{
var cerrarEmpresa = host.Services.GetRequiredService<CerrarEmpresa>();
cerrarEmpresa.Cerrar();
var terminasSesion = host.Services.GetRequiredService<TerminasSesion>();
terminasSesion.Terminar();
}
await host.StopAsync(); ¿Que diferencias ves? Ese error que me compartes ocurre cuando terminas tu aplicación o proceso sin terminar el SDK correctamente. |
Beta Was this translation helpful? Give feedback.
-
@AndresRamos yo tengo un problema con la función de fEmitirDocumento, cuando trato de emitir un documento, la función de error menciona "No existe el concepto de documento" cuando realmente sí existe, ¿me podrías ayudar? por favor. Cuando no recibo el error anterior, obtengo éste: System.Exception: External component has thrown an exception. |
Beta Was this translation helpful? Give feedback.
Te comparto un ejemplo del código en el proyecto
Sdk.Extras.ConsoleApp
que utilizo para pruebas.