示例#1
0
        private static void BindMatrixData(string formUID, ref ItemEvent oItemEvent, SAPbobsCOM.Company sbo_company, ref Application sbo_application, out bool bBubbleEvent, string sessionId)
        {
            Form oForm = sbo_application.Forms.Item(formUID);

            bBubbleEvent = true;

            DBDataSource dbData = oForm.DataSources.DBDataSources.Add("OBTN");

            Matrix oMatrix = (Matrix)oForm.Items.Item(pluginForm.MatrixLote.Uid).Specific;

            Column oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_ItemCode.Uid);

            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_ItemCode.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_itemName.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_itemName.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_SysNumber.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_SysNumber.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_DistNumber.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_DistNumber.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_MnfSerial.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_MnfSerial.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_InDate.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_InDate.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_Status.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_Status.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_Quantity.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_Quantity.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_Balance.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_Balance.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Variedad.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Variedad.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Tipo.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Tipo.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Calibre.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Calibre.dbField);

            oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Destino.Uid);
            oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Destino.dbField);

            dbData.Query(null);

            oMatrix.LoadFromDataSourceEx(true);
        }
示例#2
0
文件: FrmDocCon.cs 项目: ahazan/FE21
        /// <summary>
        /// Carga la matriz con los datos a travez del db data source
        /// </summary>
        private void CargarMatriz()
        {
            //Congelar el formulario
            Formulario.Freeze(true);

            //Limpia la tabla
            matriz.Clear();

            //Carga el data source
            dbdsMatriz.Query();

            //Cargar la matriz
            matriz.LoadFromDataSource();

            //Descongelar el formulario
            Formulario.Freeze(false);
        }
示例#3
0
        /// <summary>
        /// Obtener los datos de la base de datos y cargar la matriz
        /// </summary>
        public void CargarMatriz()
        {
            matriz = ((Matrix)(Formulario.Items.Item("mtxSucDir")).Specific);

            //Limpiar la matriz
            matriz.Clear();

            //Realizar la consulta
            dataSourceMatriz = Formulario.DataSources.DBDataSources.Item("@TSUCDIRE");

            //Ejectuar la consulta del data source de la matriz sin condiciones
            dataSourceMatriz.Query(null);

            //Congelar Formulario
            Formulario.Freeze(true);

            //Cargar la matriz desde el data source
            matriz.LoadFromDataSource();

            //Descongelar Formulario
            Formulario.Freeze(false);
        }
示例#4
0
        internal static void FormLoad(ref MenuEvent oMenuEvent, SAPbobsCOM.Company sbo_company, ref Application sbo_application, out bool bBubbleEvent, string sessionId)
        {
            bBubbleEvent = true;

            FormCreationParams FormCreationPackage;
            Form oForm = null;

            if (oMenuEvent.BeforeAction)
            {
                FormCreationPackage = (FormCreationParams)sbo_application.CreateObject(BoCreatableObjectType.cot_FormCreationParams);

                try
                {
                    if (string.IsNullOrEmpty(sessionId))
                    {
                        sessionId = sbo_application.Company.GetServiceLayerConnectionContext(ServiceLayer.Address);
                    }

                    string      contenidoArchivo = Properties.Resources.ResourceManager.GetString(pluginForm.FormType);
                    XmlDocument xmlFormulario    = new XmlDocument();
                    xmlFormulario.LoadXml(contenidoArchivo);

                    FormCreationPackage.XmlData = xmlFormulario.InnerXml;

                    FormCreationPackage.UniqueID = pluginForm.FormType + CommonFunctions.Random().ToString();
                    oForm = sbo_application.Forms.AddEx(FormCreationPackage);

                    FormCreationPackage.UniqueID = "AsignaLote" + CommonFunctions.Random().ToString();
                    oForm = sbo_application.Forms.AddEx(FormCreationPackage);

                    DBDataSource dbData = oForm.DataSources.DBDataSources.Add("OBTN");

                    Matrix oMatrix = (Matrix)oForm.Items.Item(pluginForm.MatrixLote.Uid).Specific;
                    oMatrix.Item.Enabled = false;

                    Column oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_ItemCode.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_ItemCode.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_itemName.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_itemName.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_SysNumber.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_SysNumber.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_DistNumber.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_DistNumber.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_MnfSerial.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_MnfSerial.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_InDate.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_InDate.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_Status.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_Status.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_Quantity.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_Quantity.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_Balance.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_Balance.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Variedad.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Variedad.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Tipo.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Tipo.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Calibre.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Calibre.dbField);
                    oCol.Editable = false;

                    oCol = oMatrix.Columns.Item(pluginForm.MatrixLote.Colums.Col_U_FRU_Destino.Uid);
                    oCol.DataBind.SetBound(true, "OBTN", pluginForm.MatrixLote.Colums.Col_U_FRU_Destino.dbField);

                    SAPbobsCOM.Recordset oRS = (SAPbobsCOM.Recordset)sbo_company.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset);
                    string sSql = " SELECT T0.\"U_DFO_Valor\",T0.\"U_DFO_Descrip\"   FROM \"@DFO_OPDFO\"  T0 " +
                                  "where T0.\"U_DFO_Tipo\" = 'DESTINOSUGERIDO' ";

                    oRS.DoQuery(sSql);
                    if (oRS.RecordCount != 0)
                    {
                        while (!oRS.EoF)
                        {
                            string code = oRS.Fields.Item("U_DFO_Valor").Value.ToString();
                            string name = oRS.Fields.Item("U_DFO_Descrip").Value.ToString();
                            oCol.ValidValues.Add(code, name);
                            oRS.MoveNext();
                        }
                    }
                    oCol.DisplayDesc = true;
                    oCol.Editable    = true;

                    //oConditions = (SAPbouiCOM.Conditions)oApplication.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_Conditions);
                    //oCondition = oConditions.Add();
                    //oCondition.Alias = "your field that you need filtering";
                    //oCondition.Operation = SAPbouiCOM.BoConditionOperation.co_LESS_THAN; //Your condition
                    //oCondition.CondVal = "condition value";

                    ////run your query in your table with your conditions
                    //oDBDS.Query(oConditions);

                    dbData.Query(null);

                    oMatrix.LoadFromDataSourceEx(true);

                    oForm.Visible = true;
                }
                catch
                {
                    throw;
                }
            }
        }
示例#5
0
        /// <summary>
        /// Obtener los datos de la base de datos y cargar la matriz
        /// </summary>
        public void CargarMatriz(bool activos = false)
        {
            Conditions condiciones;
            Condition  condicion;

            matriz = ((Matrix)(Formulario.Items.Item("mtxRangos")).Specific);

            //Limpiar la matriz
            matriz.Clear();

            //Realizar la consulta
            dataSourceMatriz = Formulario.DataSources.DBDataSources.Item("@TFECAE");

            //Validar si se deben mostar unicamente los rangos activos
            if (activos)
            {
                //Crear objeto condiciones
                condiciones = (Conditions)SAPbouiCOM.Framework.Application.SBO_Application.CreateObject(BoCreatableObjectType.cot_Conditions);

                //Crear instanacia de mantenimiento de CAE's
                ManteUdoCAE manteUdoCae = new ManteUdoCAE();

                //Conslutar los rangos activos y almacenarlos en arreglos de string. Contiene los DocEntry seleccionados
                string[] rangosActivos = manteUdoCae.ConsultarRangosActivos();

                //Recorrer el arreglo de rangos activos para crear las condiciones
                for (int i = 0; i < rangosActivos.Length; i++)
                {
                    //Agregar una nueva condicion
                    condicion = condiciones.Add();

                    //Establecer las propiedades de la condicion
                    condicion.Alias     = "DocEntry";
                    condicion.Operation = BoConditionOperation.co_EQUAL;
                    condicion.CondVal   = rangosActivos[i];

                    //Validar que no sea el ultimo valor del arreglo para no agregar la relacion OR a las condiciones
                    if (i + 1 < rangosActivos.Length)
                    {
                        condicion.Relationship = BoConditionRelationship.cr_OR;
                    }
                }

                //Ejecutar la consulta del data source de la matriz con las condiciones creadas
                dataSourceMatriz.Query(condiciones);
            }
            //Si no se deben filtrar los rangos...
            else
            {
                //Ejectuar la consulta del data source de la matriz sin condiciones
                dataSourceMatriz.Query(null);
            }

            //Congelar Formulario
            Formulario.Freeze(true);

            //Cargar la matriz desde el data source
            matriz.LoadFromDataSource();

            //Descongelar Formulario
            Formulario.Freeze(false);
        }