コード例 #1
0
        private Boolean grabar()
        {
            try
            {
                decimal idMoviInven = 0;
                txtObservacion.Focus();
                string  msg = "";
                string  mensaje_cbte_cble   = "";
                decimal idOrdenCompra       = 0;
                string  NumGuiaProveedor    = "";
                string  NumFacturaProveedor = "";

                if (validaciones() == false)
                {
                    MessageBox.Show("No se guardó", "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(false);
                }
                else
                {  // SI SE GRABA CABECERA Y DETALLE DE LAS TABLAS in_movi_inve Y in_movi_inve_detalle
                    getInfo();
                    if (BusCabMOvINv.GrabarDB(InfoCabMovInv, ref idMoviInven, ref mensaje_cbte_cble, ref msg))
                    {
                        InfoCabMovInv.IdNumMovi = idMoviInven;
                        NumGuiaProveedor        = InfoCabMovInv.NumDocumentoRelacionado;
                        NumFacturaProveedor     = InfoCabMovInv.NumFactura;
                        // SI GRABA EN LA TABLA in_movi_inve_detalle_x_com_ordencompra_local_det
                        if (BusTAbInt.GuardarDB(LStDet))
                        {
                            foreach (var item in LStDet)
                            {
                                var OC = busOC.Get_Info_ordencompra_local(item.IdEmpresa, item.oc_IdSucursal, item.oc_IdOrdenCompra);
                                OC.IdEstadoRecepcion_cat = "REC";
                                busOC.ModificarDB(OC, ref msg);
                                idOrdenCompra = item.oc_IdOrdenCompra;
                            }
                            // GRABA TABLA INTERMEDIA
                            foreach (var item in LstDetMovi)
                            {
                                item.IdNumMovi           = idMoviInven;
                                item.ocd_IdOrdenCompra   = idOrdenCompra;
                                item.NumFacturaProveedor = NumFacturaProveedor;
                                item.NumDocumentoRelacionadoProveedor = NumGuiaProveedor;
                            }
                            if (BusDetxProd.GuardarDB(LstDetMovi, ref msg))
                            {
                                if (BusProdxBod.ActualizarStock_x_Bodega_con_moviInven(LStDet, ref msg))
                                {
                                    this.txtID.Text = Convert.ToString(idMoviInven);
                                    MessageBox.Show("Se ha realizado correctamente la transacción #: " + idMoviInven.ToString(), "Operación Exitosa");
                                    setcab(InfoCabMovInv);
                                    set_Action(Cl_Enumeradores.eTipo_action.consultar);
                                    imprimircodigo();
                                }
                            }
                        }
                    }

                    return(true);
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString());
                return(false);
            }
        }