public Int32 crearDocumento(String concepto, double folio) { SDK.tDocumento lDocto = new SDK.tDocumento(); lDocto.aCodConcepto = concepto; lDocto.aTipoCambio = 0; lDocto.aImporte = 0; lDocto.aDescuentoDoc1 = 0; lDocto.aDescuentoDoc2 = 0; lDocto.aAfecta = 1; lDocto.aSistemaOrigen = 205; // lDocto.aCodigoCteProv = "(Ninguno)"; lDocto.aFolio = folio; lDocto.aSistemaOrigen = 205; lDocto.aSerie = ""; lDocto.aFecha = DateTime.Today.ToString("MM/dd/yyyy"); int lError = 0; Int32 lIdDocumento = 0; lError = SDK.fAltaDocumento(ref lIdDocumento, ref lDocto); if (lError != 0) { SDK.rError(lError); } return(lIdDocumento); }
public static void CreaDoctoPago() { int lError = 0; StringBuilder serie = new StringBuilder(""); double folio = 0; string codConcepto = "42017"; //Conceptos de Pago. string codCte = "CL001"; SDK.tDocumento lDocto = new SDK.tDocumento(); SDK.RegLlaveDoc factura = new SDK.RegLlaveDoc(); SDK.RegLlaveDoc pago = new SDK.RegLlaveDoc(); lError = SDK.fSiguienteFolio(codConcepto, serie, ref folio); if (lError != 0) { SDK.rError(lError); } else { lDocto.aCodConcepto = codConcepto; lDocto.aCodigoCteProv = codCte; lDocto.aFecha = DateTime.Today.ToString("MM/dd/yyyy"); lDocto.aFolio = folio; lDocto.aImporte = 464; lDocto.aNumMoneda = 1; lDocto.aTipoCambio = 1; lDocto.aSerie = serie.ToString(); lError = SDK.fAltaDocumentoCargoAbono(ref lDocto); if (lError != 0) { SDK.rError(lError); } else { factura.aCodConcepto = "42017"; factura.aSerie = ""; factura.folio = 2535; pago.aCodConcepto = codConcepto; pago.aSerie = serie.ToString(); pago.folio = folio; lError = SDK.fSaldarDocumento(ref factura, ref pago, 464, 1, DateTime.Today.ToString("MM/dd/yyyy")); if (lError != 0) { SDK.rError(lError); } else { } } } }
/// <summary> /// Manda llamar los modelos correspondientes para guardar en la base de datos. /// </summary> /// <param name="presentaciones">Lista de Insumo.</param> public void registrarPresentaciones(List <Presentacion> presentaciones) { int error = 0; double folio = 0; StringBuilder serie = new StringBuilder(12); factura.registrar(factura); SDK.fSiguienteFolio("21", serie, ref folio); foreach (var presentacion in presentaciones) { if (presentacion.verificarRegistro(presentacion) == false) { presentacion.Factura = factura; //registro de presentacion a contpaq SDK.tProduto cProducto = new SDK.tProduto(); cProducto.cCodigoProducto = presentacion.codigo; cProducto.cNombreProducto = presentacion.descripcion; cProducto.cDescripcionProducto = presentacion.descripcion; String[] clasificacion = cbxValoresDeClasificaciones.SelectedItem.ToString().Split('|'); string codigoClasificacion = clasificacion[0].Trim(); string ultimo_costo = presentacion.ultimo_costo.ToString(); cProducto.cPrecio1 = Double.Parse(ultimo_costo); cProducto.cImpuesto1 = Double.Parse(Convert.ToString(presentacion.IVA)); cProducto.cTipoProducto = 1; cProducto.cMetodoCosteo = 1; int unidadid = presentacion.Insumo.unidad_id; Int32 aldProducto = 0; error = SDK.fAltaProducto(ref aldProducto, ref cProducto); if (error == 0) { SDK.fEditaProducto(); SDK.fSetDatoProducto("CBANUNIDADES", unidadid.ToString()); SDK.fSetDatoProducto("CIDUNIDADBASE", unidadid.ToString()); SDK.fSetDatoProducto("CCONTROLEXISTENCIA", "1"); SDK.fSetDatoProducto("CIDVALORCLASIFICACION1", codigoClasificacion); SDK.fGuardaProducto(); presentacion.registrar(presentacion); } else { SDK.rError(error); return; } } } SDK.tDocumento lDocto = new SDK.tDocumento(); lDocto.aCodConcepto = "21"; lDocto.aCodigoAgente = "(Ninguno)"; lDocto.aNumMoneda = 1; lDocto.aTipoCambio = 1; lDocto.aImporte = 0; lDocto.aDescuentoDoc1 = 0; lDocto.aDescuentoDoc2 = 0; lDocto.aAfecta = 0; lDocto.aSistemaOrigen = 205; lDocto.aCodigoCteProv = txtcodigoProveedor.Text; lDocto.aFolio = folio; lDocto.aSistemaOrigen = 205; lDocto.aSerie = factura.folio; lDocto.aGasto1 = 0; lDocto.aGasto2 = 0; lDocto.aGasto3 = 0; lDocto.aFecha = DateTime.Today.ToString("MM/dd/yyyy"); int lError = 0; Int32 lIdDocumento = 0; lError = SDK.fAltaDocumento(ref lIdDocumento, ref lDocto); if (lError != 0) { SDK.rError(lError); return; } foreach (var presentacion in presentaciones) { SDK.tMovimiento ltMovimiento = new SDK.tMovimiento(); int lIdMovimiento = 0; SDK.fBuscaAlmacen(presentacion.Almacen.codigo); StringBuilder codigo = new StringBuilder(20); SDK.fLeeDatoAlmacen("CCODIGOALMACEN", codigo, 20); ltMovimiento.aCodAlmacen = codigo.ToString(); ltMovimiento.aConsecutivo = 1; ltMovimiento.aCodProdSer = presentacion.codigo; ltMovimiento.aUnidades = Double.Parse(Convert.ToString(presentacion.cantidad)); ltMovimiento.aCosto = Double.Parse(Convert.ToString(presentacion.costo_unitario)); ltMovimiento.aPrecio = Double.Parse(Convert.ToString(presentacion.costo_unitario)); lError = 0; lError = SDK.fAltaMovimiento(lIdDocumento, ref lIdMovimiento, ref ltMovimiento); if (lError != 0) { SDK.rError(lError); return; } else { //entrada almacen shark EntradaPresentacion entrada = new EntradaPresentacion(); DateTime thisDay = DateTime.Today; entrada.fecha_registro = Convert.ToDateTime(thisDay.ToString()); Presentacion presentacionR = presentacion.obtener(presentacion); entrada.Presentacion = presentacionR; entrada.Almacen = almacen.obtener(presentacion.Almacen.nombre); entrada.cantidad = presentacion.cantidad; entrada.registrar(entrada); } } if (lError == 0) { System.Windows.Forms.MessageBox.Show("SE REGISTRARON TODOS LOS DATOS CORRECTAMENTE", "Aviso Shark"); } if (CerrarNuevo == 1) { this.Close(); } else { clearFields(); } }
private void addPresentacion_Click(object sender, RoutedEventArgs e) { Boolean maximo = verificaMaximos(); if (!String.IsNullOrEmpty(txtCodigoPr.Text) && !String.IsNullOrEmpty(txtDescripcion.Text) && cbxInsumoBase.SelectedItem != null && cbxProveedor.SelectedItem != null && cbxAlmacen.SelectedItem != null && !String.IsNullOrEmpty(txtCPromedio.Text) && !String.IsNullOrEmpty(txtCCImpuesto.Text) && !String.IsNullOrEmpty(txtUcosto.Text) && !String.IsNullOrEmpty(txtRendimiento.Text) && !String.IsNullOrEmpty(txtCantidad.Text)) { if (maximo == false) { Presentacion presentacion = new Presentacion(); presentacion.codigo = txtCodigoPr.Text; presentacion.cantidad = Double.Parse(txtCantidad.Text); presentacion.costo_con_impuesto = Double.Parse(txtCCImpuesto.Text); presentacion.costo_promedio = Double.Parse(txtCPromedio.Text); presentacion.ultimo_costo = Double.Parse(txtUcosto.Text); presentacion.rendimiento = Double.Parse(txtRendimiento.Text); presentacion.IVA = Double.Parse(txtIVA.Text); presentacion.costo_unitario = Double.Parse(txtUcosto.Text); presentacion.descripcion = txtDescripcion.Text; presentacion.Insumo = insumo.obtener(cbxInsumoBase.SelectedItem.ToString()); presentacion.Almacen = almacen.obtener(cbxAlmacen.SelectedItem.ToString()); presentacion.Proveedor = proveedor.obtener(cbxProveedor.SelectedItem.ToString()); presentacion.existencia = presentacion.rendimiento * presentacion.cantidad; SDK.tProduto cProducto = new SDK.tProduto(); cProducto.cCodigoProducto = txtCodigoPr.Text; cProducto.cNombreProducto = txtDescripcion.Text; cProducto.cDescripcionProducto = txtDescripcion.Text; String[] clasificacion = cbxValoresDeClasificaciones.SelectedItem.ToString().Split('|'); string codigoClasificacion = clasificacion[0].Trim(); cProducto.cPrecio1 = Double.Parse(txtUcosto.Text); cProducto.cImpuesto1 = Double.Parse(txtIVA.Text); cProducto.cTipoProducto = 1; cProducto.cMetodoCosteo = 1; int unidad = presentacion.Insumo.unidad_id; Int32 aldProducto = 0; int error = SDK.fAltaProducto(ref aldProducto, ref cProducto); if (error == 0) { SDK.fEditaProducto(); SDK.fSetDatoProducto("CBANUNIDADES", unidad.ToString()); SDK.fSetDatoProducto("CIDUNIDADBASE", unidad.ToString()); SDK.fSetDatoProducto("CCONTROLEXISTENCIA", "1"); SDK.fSetDatoProducto("CIDVALORCLASIFICACION1", codigoClasificacion); SDK.fGuardaProducto(); presentacion.registrar(presentacion); } else { SDK.rError(error); } if (Convert.ToDouble(txtCantidad.Text) > 0) { error = 0; double folio = 0; StringBuilder serie = new StringBuilder(12); SDK.fSiguienteFolio("21", serie, ref folio); if (presentacion.verificarRegistro(presentacion) == false) { SDK.tDocumento lDocto = new SDK.tDocumento(); lDocto.aCodConcepto = "21"; lDocto.aCodigoAgente = "(Ninguno)"; lDocto.aNumMoneda = 1; lDocto.aTipoCambio = 1; lDocto.aImporte = 0; lDocto.aDescuentoDoc1 = 0; lDocto.aDescuentoDoc2 = 0; lDocto.aAfecta = 0; lDocto.aSistemaOrigen = 205; Proveedor pro = proveedor.obtener(cbxProveedor.SelectedItem.ToString()); lDocto.aCodigoCteProv = pro.codigo; lDocto.aFolio = folio; lDocto.aSistemaOrigen = 205; lDocto.aSerie = ""; lDocto.aGasto1 = 0; lDocto.aGasto2 = 0; lDocto.aGasto3 = 0; lDocto.aFecha = DateTime.Today.ToString("MM/dd/yyyy"); int lError = 0; Int32 lIdDocumento = 0; lError = SDK.fAltaDocumento(ref lIdDocumento, ref lDocto); if (lError != 0) { SDK.rError(lError); return; } SDK.tMovimiento ltMovimiento = new SDK.tMovimiento(); int lIdMovimiento = 0; SDK.fBuscaAlmacen(presentacion.Almacen.codigo); StringBuilder codigo = new StringBuilder(20); SDK.fLeeDatoAlmacen("CCODIGOALMACEN", codigo, 20); ltMovimiento.aCodAlmacen = codigo.ToString(); ltMovimiento.aConsecutivo = 1; ltMovimiento.aCodProdSer = presentacion.codigo; ltMovimiento.aUnidades = Double.Parse(Convert.ToString(presentacion.cantidad)); ltMovimiento.aCosto = Double.Parse(Convert.ToString(presentacion.costo_unitario)); ltMovimiento.aPrecio = Double.Parse(Convert.ToString(presentacion.costo_unitario)); lError = 0; lError = SDK.fAltaMovimiento(lIdDocumento, ref lIdMovimiento, ref ltMovimiento); if (lError != 0) { SDK.rError(lError); return; } else { //entrada almacen shark EntradaPresentacion entrada = new EntradaPresentacion(); DateTime thisDay = DateTime.Today; entrada.fecha_registro = Convert.ToDateTime(thisDay.ToString()); Presentacion presentacionR = presentacion.obtener(presentacion); entrada.Presentacion = presentacionR; entrada.Almacen = almacen.obtener(presentacion.Almacen.nombre); entrada.cantidad = presentacion.cantidad; entrada.registrar(entrada); } } hasChanged = "Yes"; clearFields(); llenarPresentaciones(); //dtPLista.Rows.Add(presentacion.id, presentacion.descripcion, presentacion.rendimiento, this.presentacionIns.Insumo.Unidad_Medida.nombre, presentacion.Proveedor.nombre, presentacion.codigo); } } } else { MessageBox.Show("¡AVISO! \n > Falta Ingresar Algunos Campos Importantes \n Es Necesario Ingresarlos"); } }
public bool createDocumento(Documento documento) { if (documento.timbrar) { StringBuilder serie = new StringBuilder(""); int idDocto = 0; int idMovto = 0; SDK.tDocumento lDocto = new SDK.tDocumento(); SDK.tMovimiento lMovimiento = new SDK.tMovimiento(); //Paso 1: Conseguir el folio del documento a realizar. errorCode = SDK.fSiguienteFolio(documento.cabecera.codConcepto, documento.cabecera.serie, ref documento.cabecera.folio); if (errorCode != 0) { errorMessage = SDK.rError(errorCode); return(false); } //Cabecera lDocto.aCodConcepto = documento.cabecera.codConcepto; lDocto.aCodigoCteProv = documento.cabecera.codigoCteProv; lDocto.aFecha = DateTime.Now.ToString("MM/dd/yyyy"); lDocto.aFolio = documento.cabecera.folio; lDocto.aNumMoneda = documento.cabecera.numMoneda; lDocto.aSerie = documento.cabecera.serie.ToString(); lDocto.aTipoCambio = documento.cabecera.tipoCambio; //Paso 2: Dar de alta el documento con su cabecera. errorCode = SDK.fAltaDocumento(ref idDocto, ref lDocto); if (errorCode != 0) { errorMessage = SDK.rError(errorCode); return(false); } //Paso 3: Se agregan los movimientos al documento. foreach (var item in documento.movimientos) { lMovimiento.aCodAlmacen = item.codAlmacen; lMovimiento.aCodProdSer = item.codProducto; lMovimiento.aPrecio = item.precio; lMovimiento.aUnidades = item.unidades; //Una compra //Se da de alta un movimiento. errorCode = SDK.fAltaMovimiento(idDocto, ref idMovto, ref lMovimiento); if (errorCode != 0) { errorMessage = SDK.rError(errorCode); return(false); } } //Paso 4: Se timbra el documento errorCode = SDK.fEmitirDocumento(documento.cabecera.codConcepto, documento.cabecera.serie.ToString(), documento.cabecera.folio, "12345678a", ""); if (errorCode != 0) { errorMessage = SDK.rError(errorCode); return(false); } //Paso 5: Se exporta a XML o PDF errorCode = SDK.fEntregEnDiscoXML(documento.cabecera.codConcepto, documento.cabecera.serie.ToString(), documento.cabecera.folio, 0, ""); if (errorCode != 0) { errorMessage = SDK.rError(errorCode); return(false); } errorCode = SDK.fEntregEnDiscoXML(documento.cabecera.codConcepto, documento.cabecera.serie.ToString(), documento.cabecera.folio, 1, ""); if (errorCode != 0) { errorMessage = SDK.rError(errorCode); return(false); } } if (documento.guardarPlantilla) { try { PlantillasServices.addPlantilla(documento); } catch (Exception e) { errorMessage = e.Message; return(false); } } if (documento.docEnPlantiila != null) { PlantillasServices.updatePlantilla(documento); } return(true); }
private void save() { if (cbxPresentaciones.SelectedItem != null && cbxAlmacenes.SelectedItem != null && !String.IsNullOrEmpty(txtCantidad.Text)) { double folio = 0; StringBuilder serie = new StringBuilder(12); SDK.fSiguienteFolio("21", serie, ref folio); SDK.tDocumento lDocto = new SDK.tDocumento(); lDocto.aCodConcepto = "21"; lDocto.aCodigoAgente = "(Ninguno)"; lDocto.aNumMoneda = 1; lDocto.aTipoCambio = 1; //obtiene el codigo del proveedor Presentacion pre = presentacion.get(cbxPresentaciones.SelectedItem.ToString()); Proveedor pro = proveedor.obtenerPorID(pre.proveedor_id); lDocto.aCodigoCteProv = pro.codigo; lDocto.aImporte = 0; lDocto.aDescuentoDoc1 = 0; lDocto.aDescuentoDoc2 = 0; lDocto.aAfecta = 0; lDocto.aSistemaOrigen = 205; lDocto.aFolio = folio; lDocto.aSistemaOrigen = 205; lDocto.aSerie = ""; lDocto.aGasto1 = 0; lDocto.aGasto2 = 0; lDocto.aGasto3 = 0; lDocto.aFecha = DateTime.Today.ToString("MM/dd/yyyy"); int lError = 0; Int32 lIdDocumento = 0; lError = SDK.fAltaDocumento(ref lIdDocumento, ref lDocto); if (lError != 0) { SDK.rError(lError); clearFields(); return; } SDK.tMovimiento ltMovimiento = new SDK.tMovimiento(); int lIdMovimiento = 0; pre.Almacen = almacen.obtener(cbxAlmacenes.SelectedItem.ToString()); ltMovimiento.aCodAlmacen = pre.Almacen.codigo; ltMovimiento.aConsecutivo = 1; ltMovimiento.aCodProdSer = pre.codigo; ltMovimiento.aUnidades = Double.Parse(txtCantidad.Text); ltMovimiento.aCosto = Double.Parse(Convert.ToString(pre.costo_unitario)); ltMovimiento.aPrecio = Double.Parse(Convert.ToString(pre.costo_unitario)); lError = 0; lError = SDK.fAltaMovimiento(lIdDocumento, ref lIdMovimiento, ref ltMovimiento); if (lError != 0) { SDK.rError(lError); clearFields(); return; } else { //entrada almacen shark EntradaPresentacion entrada = new EntradaPresentacion(); DateTime thisDay = DateTime.Today; entrada.fecha_registro = Convert.ToDateTime(thisDay.ToString()); entrada.Presentacion = presentacion.get(cbxPresentaciones.SelectedItem.ToString()); entrada.Almacen = almacen.obtener(cbxAlmacenes.SelectedItem.ToString()); entrada.cantidad = Convert.ToDouble(txtCantidad.Text); entrada.registrar(entrada); presentacion.sumarEntrada(entrada.Presentacion.id, Convert.ToDouble(entrada.cantidad)); MessageBoxResult dialogResult = MessageBox.Show("Se registró con exito la entrada de almacén, ¿Desea obtener el código de barras para monitorear dicha entrada?", "Confirmación", MessageBoxButton.YesNo); if (dialogResult == MessageBoxResult.Yes) { ReportsView.BarcodeView vista = new ReportsView.BarcodeView(); vista.loadReport(entrada.id); vista.Show(); } clearFields(); } if (CerrarNuevo == 1) { this.Close(); } } }