プロジェクト

全般

プロフィール

リビジョン 203

山内7年以上前に追加

資材管理不具合対応(資材返却で返却数が0でも履歴登録される)

差分を表示:

branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.cs
817 817
                    MriWork.RecKind = 1;
818 818
                    MriWork.MaterialCount = intMaterialCount;
819 819

  
820
                    if (MriList.Count == 0)     //  新規
820
                    if (intMaterialCount > 0)
821 821
                    {
822
                        strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode, DateTime.Now.Date);
823
                        MriWork.MaterialItemCode = intMaterialItemCode;
824
                        MriWork.ProcessDate = CommonMotions.cnvDate(lblRepaydate.Text);
825
                        MriWork.SeqNo = IoMri.SelectMaxMaterialRecordKeyCount(strSQL, false) + 1;
822
                        if (MriList.Count == 0)     //  新規
823
                        {
824
                            strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode, DateTime.Now.Date);
825
                            MriWork.MaterialItemCode = intMaterialItemCode;
826
                            MriWork.ProcessDate = CommonMotions.cnvDate(lblRepaydate.Text);
827
                            MriWork.SeqNo = IoMri.SelectMaxMaterialRecordKeyCount(strSQL, false) + 1;
826 828

  
827
                        MriList.Clear();
828
                        MriList.Add(MriWork);
829
                        // データ登録
830
                        if (!IoMri.InsertAction(MriList, false))
829
                            MriList.Clear();
830
                            MriList.Add(MriWork);
831
                            // データ登録
832
                            if (!IoMri.InsertAction(MriList, false))
833
                            {
834
                                IoMi.rollback();
835
                                IoCmi.rollback();
836
                                IoMri.rollback();
837
                                MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
838
                                return;
839
                            }
840

  
841
                        }
842
                        else      //  更新
831 843
                        {
832
                            IoMi.rollback();
833
                            IoCmi.rollback();
834
                            IoMri.rollback();
835
                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
836
                            return;
837
                        }
844
                            // ロック
845
                            //if (!IoMri.RowLock(intMaterialItemCode, MriList[0].ProcessDate, MriList[0].SeqNo, false))
846
                            //{
847
                            //    IoMi.rollback();
848
                            //    IoCmi.rollback();
849
                            //    MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
850
                            //    , MessageBoxButtons.OK, MessageBoxIcon.Error);
851
                            //    return;
852
                            //}
838 853

  
839
                    }
840
                    else      //  更新
841
                    {
842
                        // ロック
843
                        //if (!IoMri.RowLock(intMaterialItemCode, MriList[0].ProcessDate, MriList[0].SeqNo, false))
844
                        //{
845
                        //    IoMi.rollback();
846
                        //    IoCmi.rollback();
847
                        //    MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
848
                        //    , MessageBoxButtons.OK, MessageBoxIcon.Error);
849
                        //    return;
850
                        //}
854
                            // データ更新
855
                            strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode, DateTime.Now.Date);
856
                            strSQL += string.Format("and SeqNo = {0}", MriList[0].SeqNo);
857
                            if (!IoMri.UpdateAction(strSQL, MriWork, false))
858
                            {
859
                                IoMi.rollback();
860
                                IoCmi.rollback();
861
                                IoMri.rollback();
862
                                MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
863
                                return;
864
                            }
851 865

  
852
                        // データ更新
853
                        strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode, DateTime.Now.Date);
854
                        strSQL += string.Format("and SeqNo = {0}", MriList[0].SeqNo);
855
                        if (!IoMri.UpdateAction(strSQL, MriWork, false))
856
                        {
857
                            IoMi.rollback();
858
                            IoCmi.rollback();
859
                            IoMri.rollback();
860
                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
861
                            return;
862 866
                        }
863

  
864 867
                    }
865 868
                    
866 869
                    // 破棄

他の形式にエクスポート: Unified diff