static void SBO_Application_ItemEvent(string FormUID, ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent) { BubbleEvent = true; SAPbouiCOM.Form oForm = null; SAPbouiCOM.EditText oEdit = null; SAPbouiCOM.DataTable oDataTable = null; try { // ------------------------------------------------------------------------------------------------------------------------------------------------ // ESTOS EVENTO MANEJA LA CONDICION MODAL DE LAS PANTALLAS DONDE ReportType = "Modal" // ------------------------------------------------------------------------------------------------------------------------------------------------ if (((pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_VISIBLE) && (pVal.BeforeAction == false))) { try { oForm = Application.SBO_Application.Forms.Item(pVal.FormUID); if ((oForm.ReportType == "Modal")) { NModal.esPantallaModal = true; NModal.IDPantallaModal = pVal.FormUID; } } catch (Exception) { } } if (NModal.esPantallaModal && pVal.FormUID != NModal.IDPantallaModal && NModal.IDPantallaModal.Trim().Length > 0 && (pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_ACTIVATE || pVal.EventType == SAPbouiCOM.BoEventTypes.et_ITEM_PRESSED || pVal.EventType == SAPbouiCOM.BoEventTypes.et_MATRIX_LINK_PRESSED || pVal.EventType == SAPbouiCOM.BoEventTypes.et_GOT_FOCUS || pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_RESIZE || pVal.EventType == SAPbouiCOM.BoEventTypes.et_VALIDATE || pVal.EventType == SAPbouiCOM.BoEventTypes.et_CLICK)) { try { // Selecciona la pantalla modal BubbleEvent = false; oForm = Application.SBO_Application.Forms.Item(NModal.IDPantallaModal); oForm.Select(); } catch (Exception) { } } // If the modal from is closed... if (((FormUID == NModal.IDPantallaModal) && ((pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_CLOSE) && NModal.esPantallaModal))) { NModal.esPantallaModal = false; NModal.IDPantallaModal = ""; } // ------------------------------------------------------------------------------------------------------------------------------------------------ //Ordenes de Compra if (pVal.FormTypeEx == "142") { OrdenCompra.OrdenCompra_ItemEvent(FormUID, ref pVal, out BubbleEvent); } //Enviar Solicitud de Compra Interna a Salida de Mercancias (Exportar Lineas y datos del Documento Base) if (pVal.FormTypeEx == "1470000200" && (pVal.EventType == SAPbouiCOM.BoEventTypes.et_COMBO_SELECT) && (pVal.ItemUID == "10000329")) { SolicitudCompra.SolicitudCompra_ItemEvent(FormUID, ref pVal, out BubbleEvent); } int ObjN = Math.Abs(Convert.ToInt32(pVal.FormTypeEx)); //Bloquear o Habilitar Campos de Fechas en la ventanas de UDF en los documentos de Marketing if ((pVal.FormTypeEx.Substring(0, 1) == "-") && (pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_LOAD) && pVal.BeforeAction == false) { string[] U_Campos = { "U_MIN_FechaVenta", "U_MIN_FinMontaje", "U_MIN_FinDesarr", "U_MIN_FinProduccion", "U_MIN_IniDespacho", "U_MIN_IniMontaje", "U_MIN_FinMontaje", "U_MIN_FechaMulta" }; try { oForm = Application.SBO_Application.Forms.Item(pVal.FormUID); if (Funciones.ConsultaUsuario == false) { oDataTable = null; try { oDataTable = oForm.DataSources.DataTables.Item("DT_SQL"); } catch { oDataTable = oForm.DataSources.DataTables.Add("DT_SQL"); } Funciones.IdentificarAccesoUsuario(oDataTable); } foreach (string element in U_Campos) { if (Funciones.ItemExists(oForm, element)) { oEdit = (SAPbouiCOM.EditText)oForm.Items.Item(element).Specific; oEdit.Item.Enabled = Funciones.Habilitado; } } } catch (Exception) { // throw; } } } catch (Exception) { } }
private void Button0_ClickBefore(object sboObject, SAPbouiCOM.SBOItemEventArg pVal, out bool BubbleEvent) { BubbleEvent = true; if (Button0.Item.Enabled) { try { oForm = Application.SBO_Application.Forms.Item(pVal.FormUID); if (!Funciones.DataTableExists(oForm, "DT_SQL")) { oForm.DataSources.DataTables.Add("DT_SQL"); } oDataTable = oForm.DataSources.DataTables.Item("DT_SQL"); oDBDataSource = oForm.DataSources.DBDataSources.Item("OVPM"); string sDocNum = oDBDataSource.GetValue("DocNum", oDBDataSource.Offset).ToString(); string sDocEntry = oDBDataSource.GetValue("DocEntry", 0) == "" ? "0" : (oDBDataSource.GetValue("DocEntry", 0)); string sCardCode = oDBDataSource.GetValue("CardCode", oDBDataSource.Offset).ToString(); double dTrsfrSum = Funciones.GetDoubleFromString(oDBDataSource.GetValue("TrsfrSum", oDBDataSource.Offset).ToString()); double dDocTotal = Funciones.GetDoubleFromString(oDBDataSource.GetValue("DocTotal", oDBDataSource.Offset).ToString()); //PARA AUTORIZAR CHEQUES double dCheckSum = Funciones.GetDoubleFromString(oDBDataSource.GetValue("CheckSum", oDBDataSource.Offset).ToString()); string sCheckAutor = oDBDataSource.GetValue("U_Cheque_Autor", oDBDataSource.Offset).ToString(); if (sCardCode.Trim().Length != 0 && dDocTotal > 0) { string sAprovved = "0"; if (dTrsfrSum == 0) { sAprovved = "1"; } else { sAprovved = "0"; } //PARA AUTORIZAR CHEQUES if (dCheckSum > 0 && sCheckAutor.Trim() == "Si") { sAprovved = "0"; } oDataTable = NTablaAutoriza.BuscarDatosAutorizacion(oDataTable, "46", sDocNum); if (!oDataTable.IsEmpty) { for (int i = 0; i <= oDataTable.Rows.Count - 1; i++) { string sCodeUDO = oDataTable.GetValue("Code", i).ToString(); NTablaAutoriza.EliminarDatosAutorizacion(sCodeUDO); } } NTablaAutoriza.InsertarDatosAutorizacion("46", sDocEntry, sDocNum, sAprovved, "", Convert.ToString(Program.oCompany.UserSignature), DateTime.Now.ToString("MMM dd yyyy h:ss tt")); } } catch (Exception) { } } }