コード例 #1
0
ファイル: frm_Approve.b1f.cs プロジェクト: pqhuy1987/SAP_DEV
 private void Button0_PressedAfter(object sboObject, SAPbouiCOM.SBOItemEventArg pVal)
 {
     //Approve
     if (Fr_Authorise)
     {
         SAPbobsCOM.Recordset oR_RecordSet = (SAPbobsCOM.Recordset)oCom.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset);
         oR_RecordSet.DoQuery("Select * from [@ADDONCFG]");
         string        uid  = oR_RecordSet.Fields.Item("Code").Value.ToString();
         string        pwd  = oR_RecordSet.Fields.Item("Name").Value.ToString();
         SqlConnection conn = new SqlConnection(string.Format("Data Source={0}; Initial Catalog={1}; User id={2}; Password={3};", oCom.Server, oCom.CompanyDB, uid, pwd));
         SqlCommand    cmd  = null;
         try
         {
             cmd             = new SqlCommand("Update_Blanket_Post_Level", conn);
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@AbsID", AbsID);
             cmd.Parameters.AddWithValue("@Blanket_Type", Blanket_Type);
             cmd.Parameters.AddWithValue("@Blanket_Level", LVL_Posting);
             cmd.Parameters.AddWithValue("@Usr", oCom.UserName);
             cmd.Parameters.AddWithValue("@Approve", 1);
             cmd.Parameters.AddWithValue("@Usr_Comment", this.EditText3.Value.Trim());
             conn.Open();
             int row_count = cmd.ExecuteNonQuery();
             if (row_count == 0)
             {
                 Application.SBO_Application.StatusBar.SetText("Approve Failed !");
             }
             else
             {
                 //Approve after level 5
                 if (LVL_Posting == 5)
                 {
                     SAPbobsCOM.CompanyService           oCompSer   = oCom.GetCompanyService();
                     SAPbobsCOM.BlanketAgreementsService oBAService = (SAPbobsCOM.BlanketAgreementsService)oCompSer.GetBusinessService(SAPbobsCOM.ServiceTypes.BlanketAgreementsService);
                     SAPbobsCOM.BlanketAgreementParams   oParams    = (SAPbobsCOM.BlanketAgreementParams)oBAService.GetDataInterface(SAPbobsCOM.BlanketAgreementsServiceDataInterfaces.basBlanketAgreementParams);
                     oParams.AgreementNo = int.Parse(AbsID);
                     SAPbobsCOM.BlanketAgreement oBA = oBAService.GetBlanketAgreement(oParams);
                     oBA.Status = SAPbobsCOM.BlanketAgreementStatusEnum.asApproved;
                     oBAService.UpdateBlanketAgreement(oBA);
                 }
             }
         }
         catch (Exception ex)
         {
             Application.SBO_Application.MessageBox("Can't approve - Error: " + ex.Message);
         }
         finally
         {
             conn.Close();
             cmd.Dispose();
             if (!Check_Parent_Form_Closed(Parent_Form.UniqueID))
             {
                 Parent_Form.Select();
                 Application.SBO_Application.ActivateMenuItem("1304");
             }
             this.UIAPIRawForm.Close();
         }
     }
 }
コード例 #2
0
        public static void LinkedObjectForm(string FormUniqueID, string ActivateMenuItem, string FindItemUID, string FindItemUIDValue)
        {
            try
            {
                SAPbouiCOM.Form      oForm     = null;
                SAPbouiCOM.IEditText oEditText = null;
                bool Bool = false;

                //For frm As Integer = 0 To Application.SBO_Application.Forms.Count - 1
                // Dim sCad As String = Application.SBO_Application.Forms.Item(frm).UniqueID
                // If Application.SBO_Application.Forms.Item(frm). = FormUniqueID Then
                // 'Application.SBO_Application.Forms.Item(pVal.FormUID)
                // oForm = Application.SBO_Application.Forms.Item(FormUniqueID)
                // oForm.Close()

                // Exit For

                // End If

                //Next


                if (Bool == false)
                {
                    Application.SBO_Application.ActivateMenuItem(ActivateMenuItem);

                    Application.SBO_Application.Forms.ActiveForm.Freeze(true);

                    oForm = Application.SBO_Application.Forms.ActiveForm;

                    oForm.Select();

                    oForm.Mode = SAPbouiCOM.BoFormMode.fm_FIND_MODE;

                    oForm.Items.Item(FindItemUID).Enabled = true;

                    oEditText       = (SAPbouiCOM.IEditText)oForm.Items.Item(FindItemUID).Specific;
                    oEditText.Value = FindItemUIDValue.Trim();

                    oForm.Items.Item("1").Click();

                    oForm.Freeze(false);
                }
            }
            catch (Exception)
            {
                Application.SBO_Application.MessageBox(oCompany.GetLastErrorDescription());
            }
            finally
            {
            }
        }
コード例 #3
0
 private void OApplication_ItemEvent(string FormUID, ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent)
 {
     BubbleEvent = true;
     if (bModal & FormUID != "Modal1")
     {
         oForm.Select(); // Select the modal form
         BubbleEvent = false;
     }
     else if (FormUID == "Modal1" & (pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_CLOSE) & bModal)
     {
         bModal = false;
     }
 }
        private void OnCustomInitialize()
        {
            // Ready Matrix to populate data
            Matrix0.Clear();
            Matrix0.Columns.Item("Col_0").Visible = false;
            Matrix0.Columns.Item("Col_1").Visible = false;

            // Querying the DB Data source
            oForm = Application.SBO_Application.Forms.Item(this.UIAPIRawForm.UniqueID);
            oForm.Select();

            LoadDataMatrix();

            oForm.EnableMenu("1281", false);
            oForm.EnableMenu("1282", false);
        }
コード例 #5
0
        public void ChooseFromListOneValue(object sboObject, SAPbouiCOM.SBOItemEventArg pVal)
        {
            SAPbouiCOM.EditText uktzedEditText = ((SAPbouiCOM.EditText)sboObject);

            if (pVal.ActionSuccess)
            {
                SAPbouiCOM.SBOChooseFromListEventArg cfl = ((SAPbouiCOM.SBOChooseFromListEventArg)(pVal));
                if (cfl.SelectedObjects == null)
                {
                    return;
                }
                else
                {
                    var iChoose = ((SAPbouiCOM.SBOChooseFromListEventArg)(pVal));
                    SAPbouiCOM.DataTable dataTable = iChoose.SelectedObjects;

                    if (dataTable == null || dataTable.Rows.Count == 0)
                    {
                        return;
                    }

                    string          itemCode   = dataTable.GetValue(uktzedEditText.ChooseFromListAlias, 0).ToString();
                    SAPbouiCOM.Form activeForm = Application.SBO_Application.Forms.ActiveForm;
                    this._Form.Select();
                    uktzedEditText.Active = true;

                    try
                    {
                        uktzedEditText.String = itemCode;
                    }
                    catch
                    {
                    }

                    activeForm.Select();
                }
            }

            if (CFLtoEditTextAlias[uktzedEditText.Item.UniqueID] != null)
            {
                SetChooseFromList CFLEditText = (SetChooseFromList)CFLtoEditTextAlias[uktzedEditText.Item.UniqueID];
                CFLEditText();
            }
        }
コード例 #6
0
        /// <summary>
        /// Metodo LoadFromXml
        /// Metodo para cargar un Form a partir de un archivo XML
        /// <remarks>@author RCordova-2017/08/15</remarks>
        /// </summary>
        /// <param name="FileName"></param>
        /// <param name="FormName"></param>
        private void LoadFromXml(string FileName, string FormName)
        {
            System.Xml.XmlDocument oXmlDoc = new System.Xml.XmlDocument();
            //string sPath = System.IO.Path.GetDirectoryName(Environment.GetCommandLineArgs()[0]).ToString();

            string sPath = PathUtilities.GetCurrent("XmlForms");

            oXmlDoc.Load(sPath + "\\" + FileName);

            SAPbouiCOM.FormCreationParams creationPackage = (SAPbouiCOM.FormCreationParams)Application.SBO_Application.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_FormCreationParams);

            creationPackage.XmlData = oXmlDoc.InnerXml;

            if (FormName.Equals("frmInspDet"))
            {
                if (!Utils.FormExists(FormName))
                {
                    creationPackage.UniqueID    = FormName;
                    creationPackage.BorderStyle = SAPbouiCOM.BoFormBorderStyle.fbs_Fixed;
                    creationPackage.Modality    = SAPbouiCOM.BoFormModality.fm_Modal;
                    creationPackage.FormType    = "frmInspDet";
                    //creationPackage.

                    mObjModalForm         = Application.SBO_Application.Forms.AddEx(creationPackage);
                    mObjModalForm.Title   = "Detalles de Inspección";
                    mObjModalForm.Left    = 400;
                    mObjModalForm.Top     = 100;
                    mObjModalForm.Mode    = SAPbouiCOM.BoFormMode.fm_OK_MODE;
                    mObjModalForm.Visible = true;
                    InitFormXml();
                }
                else
                {
                    mObjModalForm.Select();
                }
            }
        }
コード例 #7
0
ファイル: mfrmRouteFinder.cs プロジェクト: radtek/UGRS_Full
        private void LoadXmlForm(string pStrFrmName)
        {
            System.Xml.XmlDocument lObjXmlDoc = new System.Xml.XmlDocument();
            string lStrPath = PathUtilities.GetCurrent("ModalForms") + "\\" + pStrFrmName + ".xml";

            lObjXmlDoc.Load(lStrPath);

            SAPbouiCOM.FormCreationParams lObjCreationPackage =
                (SAPbouiCOM.FormCreationParams)Application.SBO_Application.CreateObject
                    (SAPbouiCOM.BoCreatableObjectType.cot_FormCreationParams);


            lObjCreationPackage.XmlData = lObjXmlDoc.InnerXml;

            if (pStrFrmName.Equals(pStrFrmName))
            {
                if (!lObjUtility.FormExists(pStrFrmName))
                {
                    lObjCreationPackage.UniqueID    = pStrFrmName;
                    lObjCreationPackage.BorderStyle = SAPbouiCOM.BoFormBorderStyle.fbs_Fixed;
                    lObjCreationPackage.Modality    = SAPbouiCOM.BoFormModality.fm_Modal;
                    lObjCreationPackage.FormType    = pStrFrmName;

                    lObjModalForm         = Application.SBO_Application.Forms.AddEx(lObjCreationPackage);
                    lObjModalForm.Title   = "Busqueda de rutas";
                    lObjModalForm.Left    = 400;
                    lObjModalForm.Top     = 100;
                    lObjModalForm.Mode    = SAPbouiCOM.BoFormMode.fm_OK_MODE;
                    lObjModalForm.Visible = true;
                    InitializeXmlForm();
                }
            }
            else
            {
                lObjModalForm.Select();
            }
        }
コード例 #8
0
        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) { }
        }
コード例 #9
0
        static void SBO_Application_ItemEvent(string FormUID, ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent)
        {
            BubbleEvent = true;

            try
            {
                if ((pVal.FormTypeEx != null) && (pVal.FormTypeEx == "ComisionesVentas.Parametros") &&
                    (pVal.EventType == SAPbouiCOM.BoEventTypes.et_CLICK ||
                     pVal.EventType == SAPbouiCOM.BoEventTypes.et_RIGHT_CLICK ||
                     pVal.EventType == SAPbouiCOM.BoEventTypes.et_CHOOSE_FROM_LIST))
                {
                    Parametros.Parametros_ItemEvent(FormUID, ref pVal, oCompany, Application.SBO_Application, out BubbleEvent);
                }


                if ((pVal.FormTypeEx != null) && (pVal.FormTypeEx == "ComisionesVentas.Comisiones") &&
                    (pVal.EventType == SAPbouiCOM.BoEventTypes.et_MATRIX_LINK_PRESSED ||
                     pVal.EventType == SAPbouiCOM.BoEventTypes.et_CLICK ||
                     pVal.EventType == SAPbouiCOM.BoEventTypes.et_RIGHT_CLICK ||
                     pVal.EventType == SAPbouiCOM.BoEventTypes.et_CHOOSE_FROM_LIST ||
                     pVal.EventType == SAPbouiCOM.BoEventTypes.et_VALIDATE))
                {
                    Comisiones.Comisiones_ItemEvent(FormUID, ref pVal, oCompany, Application.SBO_Application, out BubbleEvent);
                }
            }
            catch (Exception) { }

            //'------------------------------------------------------------------------------------------------------------------------------------------------
            //'  ESTOS EVENTOS MANEJAN 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")
                    {
                        esPantallaModal = true;
                        IDPantallaModal = pVal.FormUID;
                    }
                }
                catch (Exception)
                {                }
            }

            if (esPantallaModal && FormUID != IDPantallaModal && IDPantallaModal.Trim().Length > 0 &&
                (pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_ACTIVATE || pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_DEACTIVATE || pVal.EventType == SAPbouiCOM.BoEventTypes.et_CLICK))
            {
                oForm = Application.SBO_Application.Forms.Item(IDPantallaModal);
                oForm.Select();     // Selecciona la pantalla modal
                BubbleEvent = false;
            }

            //' If the modal from is closed...
            if (FormUID == IDPantallaModal && pVal.EventType == SAPbouiCOM.BoEventTypes.et_FORM_CLOSE && esPantallaModal)
            {
                esPantallaModal = false;
                IDPantallaModal = "";
            }
            //'------------------------------------------------------------------------------------------------------------------------------------------------


            //if (pVal.FormTypeEx == "139" && pVal.EventType == SAPbouiCOM.BoEventTypes.et_CHOOSE_FROM_LIST && pVal.BeforeAction == false)
            //{
            //    SAPbouiCOM.IChooseFromListEvent oCFLEvento = (SAPbouiCOM.IChooseFromListEvent)pVal;
            //    string sCFL_ID = oCFLEvento.ChooseFromListUID;
            //    oForm = Application.SBO_Application.Forms.Item(pVal.FormUID);
            //    SAPbouiCOM.ChooseFromList oCFL = (SAPbouiCOM.ChooseFromList)oForm.ChooseFromLists.Item(sCFL_ID);

            //    SAPbouiCOM.DataTable oDataTable = oCFLEvento.SelectedObjects;
            //    string val = "";
            //    try
            //    {
            //        val = oDataTable.GetValue(0, 0).ToString();
            //        oForm.DataSources.UserDataSources.Item("UDS_CFLPRO").ValueEx = val;
            //    }
            //    catch (Exception)
            //    {
            //    }
            //    //string XX= ((SAPbouiCOM.IChooseFromListEvent)pVal).ChooseFromListUID;
            //}
        }