顯示具有 刪除子檔 標籤的文章。 顯示所有文章
顯示具有 刪除子檔 標籤的文章。 顯示所有文章

2022年10月26日 星期三

V20107 – [刪除]鈕, 除刪除主檔外, 連明細檔一起刪除 or [刪除]鈕, 只刪除主檔, 顯示訊息 " 明細檔必需先刪除,才可刪主檔

目的: V20107 – [刪除]鈕, 除刪除主檔外, 連明細檔一起刪除   (Default)

           or  [刪除]鈕,  只刪除主檔, 顯示訊息 " 明細檔必需先刪除,才可刪主檔

處理說明: 1> [刪除]鈕, 除刪除主檔外, 連明細檔一起刪除   (Default)

                  2>  [刪除]鈕,  只刪除主檔, 顯示訊息 " 明細檔必需先刪除,才可刪主檔


1>*.js
  1>> [刪除]鈕, 除刪除主檔外, 連明細檔一起刪除   (Default)
          不需額外處理

  2>> [刪除]鈕, 只刪除主檔外, 若仍有明細檔,則不允許刪除
        Ext.getCmp("btn_del").delMessage = "確定要刪除本筆工作程序主檔嗎 ?<br>"
                                                                   + "請先刪除子步序資料,才可刪除主檔資料<br> ";


    //主檔.[刪除]前,先判斷子Table 是否有資料,
    //若有的顯示訊息,請先刪除子Table資枓
    Ext.getCmp("btn_del").beforeDel = function () {
        var Tmp_grid_D1 = Ext.getCmp("grid_D1");
        var Tmp_grid_D = Ext.getCmp("grid_D");
        var Tmp_Str = "";
        if (!checkisnull(Tmp_grid_D1) && !checkisnull(Tmp_grid_D)) {
            if ((Tmp_grid_D1.store.getCount() > 0) || (Tmp_grid_D.store.getCount() > 0)) {
                Tmp_Str = "主工作程序還有明細資料(子步序), 不可刪除主工作程序資料<br>"
                    + "請先刪除主工作程序明細資料(步序說明/子步序說明)<br>"
                    + "才可刪除主工作程序資料";
                mywarnalert(Tmp_Str);
                return false;
            }
        }
    }



2>*.cs
  1>> [刪除]鈕, 除刪除主檔外, 連明細檔一起刪除   (Default)
       [HttpPost]
        public void Delete()
        {
            var c = System.Web.HttpContext.Current;
            NameValueCollection nvc = c.Request.Form;
            string[] arrCondition;
            //string[] arrCondition = getPK("AMM_WKSTPDD"); //需修改成指定的key
             //除刪除主檔外, 連明細檔一起刪除   (Default)
            arrCondition = getPK("AMM_WKSTP"); //需修改成指定的key
            excuteDelete(nvc, "AMM_WKSTPDD", arrCondition);

            //arrCondition = getPK("AMM_WKSTPD"); //需修改成指定的key
            arrCondition = getPK("AMM_WKSTP"); //需修改成指定的key
            excuteDelete(nvc, "AMM_WKSTPD", arrCondition);

            arrCondition = getPK();
            excuteDelete(nvc, DBTable, arrCondition);
        }

      2>> [刪除]鈕, 只刪除主檔外, 若仍有明細檔,則不允許刪除
        [HttpPost]
        public void Delete()
        {
            var c = System.Web.HttpContext.Current;
            NameValueCollection nvc = c.Request.Form;
            string[] arrCondition;          

            arrCondition = getPK();
            excuteDelete(nvc, DBTable, arrCondition);
        }

2022年10月17日 星期一

V20107 - MDD - 刪除主檔/明細檔/子明細檔處理

 目的: V20107 - Master-Detail-Detail(MDD) - 刪除主檔/明細檔/子明細檔處理

處理說明: 1> //主檔.[刪除]前,先判斷子Table 是否有資料,若有的顯示訊息,請先刪除子Table資枓
                       Ext.getCmp("btn_del").beforeDel = function () {
                             var Tmp_grid_D1 = Ext.getCmp("grid_D1");
                             var Tmp_grid_D = Ext.getCmp("grid_D");
                             var Tmp_Str = "";
                            if (!checkisnull(Tmp_grid_D1) && !checkisnull(Tmp_grid_D)) {
                                 if ((Tmp_grid_D1.store.getCount() > 0) || (Tmp_grid_D.store.getCount() > 0)) {
                            Tmp_Str = "主工作程序還有明細資料(子步序), 不可刪除主工作程序資料<br>"
                                           + "請先刪除主工作程序明細資料(步序說明/子步序說明)<br>"
                                           + "才可刪除主工作程序資料";
                                            mywarnalert(Tmp_Str);
                                     return false;
                         }}}

                    2>明細檔.[刪除]前,先判斷子 Table 是否有資料
                         Ext.getCmp("grid_D").beforeDel = function () {
                         var Tmp_grid_D1 = Ext.getCmp("grid_D1");        
                         var Tmp_Str = "";
                         if (!checkisnull(Tmp_grid_D1) ) {
                         if (Tmp_grid_D1.store.getCount() > 0) {
                          Tmp_Str = "工作步序說明還有明細資料(子步序), 不可刪除步序說明資料<br>"
                                         + "請先刪除工作步序明細資料(子步序說明)<br>"
                                         + "才可刪除工作步序明細資料";
                           mywarnalert(Tmp_Str);
                           return false;
            }        }    }


1>*.js  主檔.[刪除]

                      //主檔.[刪除]前,先判斷子Table 是否有資料,若有的顯示訊息,請先刪除子Table資枓
                       Ext.getCmp("btn_del").beforeDel = function () {
                             var Tmp_grid_D1 = Ext.getCmp("grid_D1");
                             var Tmp_grid_D = Ext.getCmp("grid_D");
                             var Tmp_Str = "";
                            if (!checkisnull(Tmp_grid_D1) && !checkisnull(Tmp_grid_D)) {
                                 if ((Tmp_grid_D1.store.getCount() > 0) || (Tmp_grid_D.store.getCount() > 0)) {
                            Tmp_Str = "主工作程序還有明細資料(子步序), 不可刪除主工作程序資料<br>"
                                           + "請先刪除主工作程序明細資料(步序說明/子步序說明)<br>"
                                           + "才可刪除主工作程序資料";
                                            mywarnalert(Tmp_Str);
                                     return false;
                         }}}

2>Detail檔.[刪除]


    //主檔.[刪除]前,先判斷子Table 是否有資料,
    //若有的顯示訊息,請先刪除子Table資枓
    Ext.getCmp("grid_D").beforeDel = function () {
        var Tmp_grid_D1 = Ext.getCmp("grid_D1");        
        var Tmp_Str = "";
        if (!checkisnull(Tmp_grid_D1) ) {
            if (Tmp_grid_D1.store.getCount() > 0) {
                Tmp_Str = "工作步序說明還有明細資料(子步序), 不可刪除步序說明資料<br>"
                    + "請先刪除工作步序明細資料(子步序說明)<br>"
                    + "才可刪除工作步序明細資料";
                mywarnalert(Tmp_Str);
                return false;
            }
        }
    }