private void RegistrarErrorSap(int idTipoDocumento, int idDocumento, string mensaje) { try { var bdError = new BD.Error(); bool rpta = bdError.Insertar(idTipoDocumento, idDocumento, mensaje); } catch (Exception ex) { throw ex; } }
private void EnviarSolicitudesSap(ref DI.DiConexion diConexion, BE.Empresa beEmpresa) { int errCode = 0; string errMessage = ""; try { var beTipoSolicitud = new BD.TipoDocumento().Obtener(SOLICITUD); var bdSap = new BD.Sap(diConexion.Server, diConexion.CompanyDB, diConexion.DbUserName, diConexion.DbPassword); var bdError = new BD.Error(); var diSolicitud = new DI.DiSolicitudCompra(diConexion.oCompany); var bdSolicitud = new BD.SolicitudCompra(); foreach (var SolicitudJson in this.lstWsSolicitudes) { var Solicitudese = TD.JsonToSe.SolicitudCompra(SolicitudJson); Solicitudese.Serie = bdSap.ObtenerSerieSolicitudCompra(this.serie); for (int i = 0; i < Solicitudese.Detalle.Count; i++) { Solicitudese.Detalle[i].CodAlmacen = bdSap.ObtenerCodigoAlmacen(Solicitudese.Detalle[i].Codigo); } string docEntry = diSolicitud.Enviar(Solicitudese, out errCode, out errMessage); if (docEntry.Length > 0) { Solicitudese.DocEntry = int.Parse(docEntry); } var beSolicitud = TD.SeToBe.SolicitudCompra(Solicitudese); beSolicitud.Empresa = beEmpresa; beSolicitud.TipoDocumento = beTipoSolicitud; var rpta = bdSolicitud.Insertar(ref beSolicitud); if (rpta == true && docEntry.Length == 0) { this.RegistrarErrorSap(SOLICITUD, beSolicitud.IdSolicitudCompra, errMessage); } } } catch (Exception ex) { throw ex; } }
private void EnviarEntradasSap(ref DI.DiConexion diConexion, BE.Empresa beEmpresa) { int errCode = 0; string errMessage = ""; try { var beTipoEntrada = new BD.TipoDocumento().Obtener(ENTRADA); var bdSap = new BD.Sap(diConexion.Server, diConexion.CompanyDB, diConexion.DbUserName, diConexion.DbPassword); var bdError = new BD.Error(); var diEntrada = new DI.DiEntradaAlmacenPorCompra(diConexion.oCompany); var bdEntrada = new BD.EntradaAlmacen(); foreach (var EntradaJson in this.lstWsEntradas) { var EntradaSe = TD.JsonToSe.EntradaAlmacen(EntradaJson); EntradaSe.Serie = bdSap.ObtenerSerieEntradaAlmacenPorCompra(this.serie); for (int i = 0; i < EntradaSe.Detalle.Count; i++) { EntradaSe.Detalle[i].CodAlmacen = bdSap.ObtenerCodigoAlmacen(EntradaSe.Detalle[i].Codigo); } string docEntry = diEntrada.Enviar(EntradaSe, out errCode, out errMessage); if (docEntry.Length > 0) { EntradaSe.DocEntry = int.Parse(docEntry); } var beEntrada = TD.SeToBe.EntradaAlmacen(EntradaSe); beEntrada.Empresa = beEmpresa; beEntrada.TipoDocumento = beTipoEntrada; var rpta = bdEntrada.Insertar(ref beEntrada); if (rpta == true && docEntry.Length == 0) { this.RegistrarErrorSap(ENTRADA, beEntrada.IdEntradaAlmacen, errMessage); } } } catch (Exception ex) { throw ex; } }
public void Cargar(int idTipoDocumento, int idDocumento) { try { var lstBeError = new BD.Error().Listar(idTipoDocumento, idDocumento); this.lstError = new List <Error>(); foreach (var beError in lstBeError) { var error = new Error(); error.Id = beError.Id; error.Mensaje = beError.Mensaje; this.lstError.Add(error); } this.dgvErrores.DataSource = this.lstError; this.txtNroRegistros.Text = this.lstError.Count.ToString(); } catch (Exception ex) { throw ex; } }
private void btnEnviar_Click(object sender, EventArgs e) { try { this.btnEnviar.Enabled = false; this.stlMensaje.Text = string.Empty; if (this.dgvDocumentosError.CurrentRow == null) { return; } var uiDocumento = (Documento)this.dgvDocumentosError.CurrentRow.DataBoundItem; if (uiDocumento.Estado != ERROR) { return; } int errCode = 0; string errMessage = ""; var beEmpresa = new BD.Empresa().Obtener(uiDocumento.EmpresaId); var beConfiguracion = new BD.Configuracion().Obtener(beEmpresa); string server = beConfiguracion.Servidor; string licenseServer = beConfiguracion.LicenciaSAP; string companyDB = beConfiguracion.BaseDatos; string dbUserName = beConfiguracion.UsuarioBD; string dbPassword = beConfiguracion.ClaveBD; string userName = beConfiguracion.UsuarioSAP; string password = beConfiguracion.ClaveSAP; this.stlMensaje.Text = $"Conectando al SBO de la compañia { beConfiguracion.Empresa.Nombre }"; using (var sbo = new DI.DiConexion(server, licenseServer, companyDB, dbUserName, dbPassword, userName, password)) { var sapBd = new BD.Sap(server, companyDB, dbUserName, dbPassword); var errorBd = new BD.Error(); switch (uiDocumento.TipoId) { case SALIDA: // "Salida de Almacen": var bdSalida = new BD.SalidaAlmacen(); var beSalida = bdSalida.Obtener(uiDocumento.Id); if (beSalida != null) { var seSalida = TD.BeToSe.SalidaAlmacen(beSalida); this.stlMensaje.Text = $"Enviando Salida de Almacen"; string docEntry = new DI.DiSalidaAlmacen(sbo.oCompany).Enviar(seSalida, out errCode, out errMessage); if (docEntry.Length > 0) { beSalida.CodSap = int.Parse(docEntry); } var rpta = bdSalida.Actualizar(beSalida); if (rpta == true && errCode != 0) { this.RegistrarErrorSap(SALIDA, beSalida.IdSalidaAlmacen, errMessage); } } break; case ENTRADA: // "Entrada de Almacen": var bdEntrada = new BD.EntradaAlmacen(); var beEntrada = bdEntrada.Obtener(uiDocumento.Id); if (beEntrada != null) { var seEntrada = TD.BeToSe.EntradaAlmacen(beEntrada); this.stlMensaje.Text = $"Enviando Entrada de Almacen"; string docEntry = new DI.DiEntradaAlmacenPorCompra(sbo.oCompany).Enviar(seEntrada, out errCode, out errMessage); if (docEntry.Length > 0) { beEntrada.CodSap = int.Parse(docEntry); } var rpta = bdEntrada.Actualizar(beEntrada); if (rpta == true && errCode != 0) { this.RegistrarErrorSap(SALIDA, beEntrada.IdEntradaAlmacen, errMessage); } } break; case SOLICITUD: // "Solicitud de Compra": var bdSolicitud = new BD.SolicitudCompra(); var beSolicitud = bdSolicitud.Obtener(uiDocumento.Id); if (beSolicitud != null) { var seSolicitud = TD.BeToSe.SolicitudCompra(beSolicitud); this.stlMensaje.Text = $"Enviando Solicitud de Compra"; string docEntry = new DI.DiSolicitudCompra(sbo.oCompany).Enviar(seSolicitud, out errCode, out errMessage); if (docEntry.Length > 0) { beSolicitud.CodSap = int.Parse(docEntry); } var rpta = bdSolicitud.Actualizar(beSolicitud); if (rpta == true && errCode != 0) { this.RegistrarErrorSap(SOLICITUD, beSolicitud.IdSolicitudCompra, errMessage); } } break; default: break; } } this.stlMensaje.Text = "Sincronización Completada"; this.CargarDocumentosError(); } catch (Exception ex) { General.ErrorMessage(ex.Message); } finally { this.btnEnviar.Enabled = true; } }