public void Control_C_PrdID_Validating(object sender, OnValidationEventArgs e)
        {
            Mantis.LVision.RFApi.RFControlText Control_C_PrdID = GetControlByName("C_PrdID");
            if (Control_C_PrdID != null)
            {
                RFControlText combokey  = GetControlByName("combokey");
                string        key       = "";
                string        ProductID = Control_C_PrdID.Value.ToString();

                string strSQL           = "SELECT LPA.pat_ID FROM dbo.LV_ProductAttributes LPA WHERE LPA.pat_Code='SET';";
                object queryReturnValue = dbr.SelectSingleValue(strSQL, m_EmptyForm);
                if (queryReturnValue != null)
                {
                    string IA_SetID = queryReturnValue.ToString();
                    strSQL = "SELECT  LPAV.pav_Value + ' - ' + LALV.all_Value FROM dbo.LV_ProductAttributesValues LPAV  INNER JOIN dbo.LV_ProductAttributeList LPAL ON LPAL.pal_AttributeID = LPAV.pav_attributeID  AND LPAL.pal_Code = LPAV.pav_Value  INNER JOIN dbo.LV_AttributeListValue LALV ON all_PrdAttrListID = pal_ID WHERE LPAV.pav_ProductID = " + ProductID + " AND LPAV.pav_attributeID = " + IA_SetID + " AND LALV.all_LanguageID = " + this.m_EmptyForm.LanguageID.ToString() + ";";
                    object queryReturnedValue = dbr.SelectSingleValue(strSQL, m_EmptyForm);
                    if (queryReturnedValue != null)
                    {
                        string IA_SetValue = queryReturnedValue.ToString();
                        m_EmptyForm.Rf.ClearScreen();
                        strSQL = "select '1' id, 'TAK' rep UNION ALL  select '2' id, 'NIE' rep";

                        string ipbstrResult = null;
                        m_EmptyForm.Rf.ClearScreen();
                        System.Data.DataSet ds = dbr.SelectTable(strSQL, m_EmptyForm, null);
                        key = m_EmptyForm.Rf.DisplayCombo(1, 1, "Produkt ma już  ustawiony SET:  " + IA_SetValue.ToString(), "Chcesz zmienić?:", ref ipbstrResult, ds.Tables[0], "id", "rep", null, eEchoMode.ECHO_ON, null, true, false, "1", true);

                        combokey.Value         = key;
                        combokey.ReadOnly      = true;
                        combokey.OriginalValue = key;
                    }
                    else
                    {                           /*there is no IA:SET for this item*/
                        combokey.Value         = "1";
                        combokey.ReadOnly      = true;
                        combokey.OriginalValue = "1";
                    }
                }
            }
        }
        public void txtProduct_Validating(object sender, OnValidationEventArgs e)
        {
            string     IA_SetID, IA_SetValue, strSQL, RFFolder, XMLFormPath, ProductCode, IA_CategoryID, IA_CategoryValue;
            CMenuTools RFtools = new CMenuTools();
            Routines   dbr     = new Routines();

            try
            {
                /*check if there are parameters*/
                if (m_Form.Parameters.Count > 0 || m_Form.Parameters != null)
                {
                    /*get RFFolder path*/
                    RFFolder = m_Form.Parameters.get_ItemString("RFFolder");

                    ProductID   = m_Form.txtProduct.ProductID;
                    ProductCode = m_Form.txtProduct.ProductCode;
                    if (ProductID > 0 && ReceiptCode != "")
                    {
                        /*check if product have category S or no category*/
                        strSQL = "SELECT LPA.pat_ID FROM dbo.LV_ProductAttributes LPA WHERE LPA.pat_Code='001';";
                        object queryReturnValue = dbr.SelectSingleValue(strSQL, m_Form);
                        if (queryReturnValue != null)
                        {
                            IA_CategoryID    = queryReturnValue.ToString();
                            strSQL           = "Select LPAV.pav_Value FROM dbo.LV_ProductAttributesValues LPAV WHERE LPAV.pav_ProductID=" + ProductID + " And  LPAV.pav_attributeID=" + IA_CategoryID + " ;";
                            queryReturnValue = dbr.SelectSingleValue(strSQL, m_Form);
                            if (queryReturnValue != null)
                            {
                                IA_CategoryValue = queryReturnValue.ToString();
                                if (IA_CategoryValue == null || IA_CategoryValue == "S")
                                {
                                    /*check IA:SET value*/
                                    strSQL           = "SELECT LPA.pat_ID FROM dbo.LV_ProductAttributes LPA WHERE LPA.pat_Code='SET';";
                                    queryReturnValue = dbr.SelectSingleValue(strSQL, m_Form);
                                    if (queryReturnValue != null)
                                    {
                                        IA_SetID = queryReturnValue.ToString();
                                        strSQL   = "Select LPAV.pav_Value FROM dbo.LV_ProductAttributesValues LPAV WHERE LPAV.pav_ProductID=" + ProductID + " And  LPAV.pav_attributeID=" + IA_SetID + " ;";
                                        object queryReturnedValue = dbr.SelectSingleValue(strSQL, m_Form);
                                        if (queryReturnedValue != null)
                                        {
                                            IA_SetValue = queryReturnedValue.ToString();
                                        }
                                        else
                                        {
                                            IA_SetValue = null;
                                        }

                                        /*only if IA_SetValue is equal ? then ask user for change
                                         * if is null then create IA then ask user */
                                        if (IA_SetValue == null)
                                        {
                                            /*Setup item hierarhy and IA*/
                                            strSQL = "exec usp_SetItemSetup  @prdCode='" + ProductCode + "';";
                                            int execReturnedValue = dbr.Execute(strSQL, con, null, m_Form);
                                        }
                                        if (IA_SetValue == null || IA_SetValue == "?")
                                        {
                                            /*set xml form path*/
                                            XMLFormPath = RFFolder + "\\SET\\Set26IASet.xml";
                                            /*call RF form from XML*/
                                            CMenuTools.ShowFormFile(m_Form, XMLFormPath);
                                        }
                                    }
                                }
                                else
                                {
                                    string exception = "Można przyjąć   tylko produtky  SET!!";
                                    m_Form.Rf.DisplayError(exception);
                                    e.Cancel = true;
                                }
                            }
                        }
                    }
                }
            }

            catch (InvalidCastException ex)
            {
                m_Form.Rf.DisplayError(ex);
            }
        }