コード例 #1
0
        /// <summary>
        ///累加日计划面积
        /// </summary>
        /// <param name="e"></param>
        public override void EndOperationTransaction(EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);
            IViewService Services = ServiceHelper.GetService <IViewService>();

            if (selectedRows != null && selectedRows.Count() != 0)
            {
                IMetaDataService metadataService = Kingdee.BOS.App.ServiceHelper.GetService <IMetaDataService>();


                foreach (DynamicObject dy in selectedRows)
                {
                    string Id = Convert.ToString(dy["Id"]);

                    if (dy["SZXY_TFJCDEntry2"] is DynamicObjectCollection Entry)
                    {
                        foreach (var item in Entry)
                        {
                            decimal PlyAvg = Convert.ToDecimal(item["F_SZXY_PLyAvg"]);

                            string TFCode = Convert.ToString(item["F_SZXY_TFNo1"]);
                            if (!TFCode.IsNullOrEmptyOrWhiteSpace() && Convert.ToInt32(PlyAvg) > 0)
                            {
                                string sql1 = $"/*dialect*/update SZXY_t_XYTFEntry  set F_SZXY_SJPLY={PlyAvg} " +
                                              $" where F_SZXY_COATCODE='{TFCode}' ";

                                DBServiceHelper.Execute(Context, sql1);
                            }
                        }
                    }
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// 生成id和编码
        /// </summary>
        /// <param name="bardCodes"></param>
        private void MakeBillNo(List <DynamicObject> lstDynamicObj)
        {
            IDBService service = Kingdee.BOS.Contracts.ServiceFactory.GetService <IDBService>(this.Context);

            long[] ids = service.GetSequenceInt64(Context, "JN_T_SAL_ForecastChange", lstDynamicObj.Count()).ToArray();

            Dictionary <string, object> options = new Dictionary <string, object>();

            options["CodeTime"]     = 1;
            options["UpdateMaxNum"] = 1;

            List <BillNoInfo> billNos = Kingdee.BOS.ServiceHelper.BusinessDataServiceHelper.GetBillNo(this.Context, "JN_YDL_SAL_ForecastChange", lstDynamicObj.ToArray(), options);

            for (int i = 0; i < billNos.Count; i++)
            {
                lstDynamicObj[i]["FBillNo"] = billNos[i].BillNo;
                lstDynamicObj[i]["Id"]      = ids[i];

                var entitys = lstDynamicObj[i]["FEntity"] as DynamicObjectCollection;
                if (entitys != null && entitys.Count > 0)
                {
                    long[] entryIds = DBServiceHelper.GetSequenceInt64(this.Context, "JN_T_SAL_ForecastChangeEntry", entitys.Count()).ToArray();
                    for (int j = 0; j < entitys.Count; j++)
                    {
                        entitys[j]["Id"] = entryIds[j];
                    }
                }
            }
        }
コード例 #3
0
        /// <summary>
        ///累加日计划面积
        /// </summary>
        /// <param name="e"></param>
        public override void EndOperationTransaction(EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);
            IViewService Services = ServiceHelper.GetService <IViewService>();

            if (selectedRows != null && selectedRows.Count() != 0)
            {
                //IMetaDataService metadataService = Kingdee.BOS.App.ServiceHelper.GetService<IMetaDataService>();


                foreach (DynamicObject dy in selectedRows)
                {
                    string Id = Convert.ToString(dy["Id"]);


                    string LSNo = Convert.ToString(dy["F_SZXY_ProductNo"]);
                    if (LSNo != "" && !LSNo.IsNullOrEmptyOrWhiteSpace())
                    {
                        //改写流转状态
                        string UpdateStateSql = string.Format("/*dialect*/update SZXY_t_XYLS set  F_SZXY_CIRCULATIONSTATE1={0}   where F_SZXY_RECNO='{1}' ", 0, LSNo);
                        int    res            = DBServiceHelper.Execute(Context, UpdateStateSql);
                    }
                }
            }
        }
コード例 #4
0
        /// <summary>
        /// 保存后,写入日志操作
        /// </summary>
        /// <param name="e"></param>
        public override void AfterSave(AfterSaveEventArgs e)
        {
            //List<SqlParam> lsp;
            //string sql = @"/*dialect*/ insert into PAEZ_t_BillRecordLog
            //(FUSERID,FDATETIME,FORGID,FSUBSYSTEMID,FOPERATENAME,FCLIENTIP,F_PAEZ_Bill,F_PAEZ_ColumnName,F_PAEZ_OldValue,F_PAEZ_NewValue,F_PAEZ_DataRowNumber)
            //values(@UserName,@time,@forgid,'','',@IP,@Bill,@ColumnName,@OldValue,@NewValue,@DataRowNumber)";
            //foreach (var item in colist)
            //{
            //    lsp = new List<SqlParam>() {
            //                    new SqlParam("@UserName",KDDbType.String,this.Context.UserName),
            //                    new SqlParam("@time",KDDbType.DateTime,System.DateTime.Now),
            //                    new SqlParam("@forgid",KDDbType.String,this.Context.CurrentOrganizationInfo.Name),
            //                    new SqlParam("@IP",KDDbType.String,this.Context.ClientInfo.IpAddress),
            //                    new SqlParam("@Bill",KDDbType.String,this.View.BillBusinessInfo.Elements[0].Name),
            //                    new SqlParam("@ColumnName",KDDbType.String,item["Column"]),
            //                    new SqlParam("@OldValue",KDDbType.String,item["Old"]),
            //                    new SqlParam("@NewValue",KDDbType.String,item["New"]),
            //                    new SqlParam("@DataRowNumber",KDDbType.String,item["Row"]),
            //                };
            //    DBServiceHelper.Execute(this.Context, sql, lsp);
            //}


            string sql = @"/*dialect*/ insert into PAEZ_t_BillRecordLog
(FUSERID,FDATETIME,FORGID,FSUBSYSTEMID,FOPERATENAME,FCLIENTIP,F_PAEZ_Bill,F_PAEZ_ColumnName,F_PAEZ_OldValue,F_PAEZ_NewValue,F_PAEZ_DataRowNumber) 
values('{0}','{1}','{2}','','','{3}','{4}','{5}','{6}','{7}','{8}')";

            foreach (var item in colist)
            {
                DBServiceHelper.Execute(this.Context, string.Format(sql, Context.UserName, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), Context.CurrentOrganizationInfo.Name
                                                                    , Context.ClientInfo.IpAddress, View.BillBusinessInfo.Elements[0].Name, item["Column"], item["Old"], item["New"], item["Row"]));
            }
            colist.Clear();
        }
コード例 #5
0
        ///<summary>
        ///修改含税单价
        ///</summary>
        private DynamicObjectCollection GetSplitSourceData(BusinessInfo billInfo, DynamicObjectCollection sourceData)
        {
            // DynamicObjectCollection newSourceData = new DynamicObjectCollection(sourceData.DynamicCollectionItemPropertyType);
            foreach (var oneSourceData in sourceData)
            {
                string FentrtyID = oneSourceData["FEntityDetail_FEntryID"].ToString();

                string sql = string.Format(@"select a.FTAXPRICE from  T_AR_RECEIVABLEENTRY_LK b inner join T_AR_RECEIVABLEENTRY a 
                                                    on a.FENTRYID=b.FENTRYID where b.FSID='{0}'", FentrtyID);
                //含税单价
                decimal FARFTAXPRICE = DBServiceHelper.ExecuteScalar <decimal>(this.Context, sql, 0, null);
                if (Math.Abs(FARFTAXPRICE) > 0)
                {
                    oneSourceData["FTaxPrice"] = FARFTAXPRICE;
                }
                //判断是否第一次下推
                sql = string.Format(@"select  count(*) as zongshu  from T_AR_RECEIVABLEENTRY_LK  where  FSID='{0}'", FentrtyID);
                decimal zongshu = DBServiceHelper.ExecuteScalar <decimal>(this.Context, sql, 0, null);
                if (zongshu > 0)
                {
                    oneSourceData["FIsLockPrice"] = 1;
                    //锁定所有财务应收单价
                    string upsql = string.Format(@"/*dialect*/ update T_AR_RECEIVABLEENTRY set FIsLockPrice=1 from T_AR_RECEIVABLEENTRY a 
                                                   inner join T_AR_RECEIVABLEENTRY_LK b on a.FENTRYID=b.FENTRYID  where  FSID='{0}'", FentrtyID);
                    //更新锁库字段
                    DBServiceHelper.Execute(Context, upsql);
                }
                else
                {
                    oneSourceData["FIsLockPrice"] = 0;
                }
            }
            return(sourceData);
        }
コード例 #6
0
        public override void AfterExecuteOperationTransaction(AfterExecuteOperationTransaction e)
        {
            try
            {
                string sql = string.Empty;
                if (e.DataEntitys != null && e.DataEntitys.Count <DynamicObject>() > 0)
                {
                    foreach (DynamicObject item in e.DataEntitys)
                    {
                        //收款单id
                        string Fid = item["Id"].ToString();
                        sql = string.Format(@"/*dialect*/ update T_AR_RECEIVEBILLSRCENTRY  SET FORDERQTY=t2.FQTY FROM T_AR_RECEIVEBILLSRCENTRY t1 
                                                inner join T_SAL_ORDERENTRY  t2 on t1.FORDERENTRYID=t2.FENTRYID 
                                                left join T_AR_RECEIVEBILL t3 on t3.FID=t1.FID where t3.FID={0}", Fid);

                        //更新收款单上的销售订单数量
                        DBServiceHelper.Execute(Context, sql);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new KDException("", "更新收款单上的销售订单数量失败:" + ex.ToString());
            }
        }
コード例 #7
0
        /// <summary>
        /// 处理方法
        /// </summary>
        /// <param name="o">数据对象</param>
        private void Act_DoAfterSubmit(DynamicObject o)
        {
            string _FID = o["Id"].ToString();
            string _sql = "exec proc_czty_RndInContractName @FID='" + _FID + "'";

            DBServiceHelper.Execute(base.Context, _sql);
        }
コード例 #8
0
 public override void BeginOperationTransaction(BeginOperationTransactionArgs e)
 {
     try
     {
         if (e.DataEntitys != null && e.DataEntitys.Count <DynamicObject>() > 0)
         {
             foreach (DynamicObject item in e.DataEntitys)
             {
                 string sql = string.Empty;
                 //销售出库单id
                 string Fid = item["Id"].ToString();
                 sql += string.Format(@"/*dialect*/ update T_SAL_OUTSTOCKENTRY set FTotalARFNOTAXAMOUNTFOR=FAMOUNT,FTotalARFALLAMOUNTFOR=FALLAMOUNT
                                        from T_SAL_OUTSTOCKENTRY a inner join T_SAL_OUTSTOCKENTRY_F b on b.FENTRYID=a.FENTRYID where a.FID={0} and  FTotalARFNOTAXAMOUNTFOR=0", Fid);
                 sql += string.Format(@"/*dialect*/ update T_SAL_OUTSTOCK set FTotalARFNOTAXAMOUNTFOR_H=FBILLAMOUNT_LC,FTotalARFALLAMOUNTFOR_H=FBILLALLAMOUNT_LC from 
                           T_SAL_OUTSTOCK a inner join  T_SAL_OUTSTOCKFIN b on a.fid=b.fid  where a.FID={0} and FTotalARFNOTAXAMOUNTFOR_H=0", Fid);
                 //更新销售出库单
                 DBServiceHelper.Execute(Context, sql);
             }
         }
     }
     catch (Exception ex)
     {
         throw new KDException("", "保存失败:" + ex.ToString());
     }
 }
コード例 #9
0
        /// <summary>
        ///累加日计划面积
        /// </summary>
        /// <param name="e"></param>
        public override void EndOperationTransaction(EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);
            IViewService Services = ServiceHelper.GetService <IViewService>();

            if (selectedRows != null && selectedRows.Count() != 0)
            {
                IMetaDataService metadataService = Kingdee.BOS.App.ServiceHelper.GetService <IMetaDataService>();
                string           SoureFormId     = "SZXY_FHJTRSCJH";
                //获取单据元数据
                FormMetadata BilMetada = metadataService.Load(Context, SoureFormId) as FormMetadata;

                foreach (DynamicObject dy in selectedRows)
                {
                    string  Id       = Convert.ToString(dy["Id"]);
                    decimal Area     = 0;
                    string  RJHFid   = string.Empty;
                    string  RJHRowId = string.Empty;
                    RJHFid   = Convert.ToString(dy["F_SZXY_FIDH"]);
                    Area     = Convert.ToDecimal(dy["F_SZXY_ProdArea"]);
                    RJHRowId = Convert.ToString(dy["F_SZXY_FEntryIDH"]);


                    if (Area > 0 && !RJHFid.IsNullOrEmptyOrWhiteSpace() && Convert.ToInt32(RJHFid) > 0 && Convert.ToInt32(RJHRowId) > 0)
                    {
                        //单据头反写复合日计划实际完成面积

                        string sql1 = $"/*dialect*/update SZXY_t_LSJTRSCJHEntry  set F_SZXY_ProdArea=F_SZXY_ProdArea-{Area} " +
                                      $"  where Fid={RJHFid}" +
                                      $" and FEntryID={RJHRowId} ";
                        DBServiceHelper.Execute(Context, sql1);
                    }
                }
            }
        }
コード例 #10
0
        /// <summary>
        ///累加日计划面积
        /// </summary>
        /// <param name="e"></param>
        public override void EndOperationTransaction(EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);
            IViewService Services = ServiceHelper.GetService <IViewService>();

            if (selectedRows != null && selectedRows.Count() != 0)
            {
                IMetaDataService metadataService = Kingdee.BOS.App.ServiceHelper.GetService <IMetaDataService>();

                foreach (DynamicObject dy in selectedRows)
                {
                    string  Id   = Convert.ToString(dy["Id"]);
                    decimal Area = 0;

                    string RJHRowId = string.Empty;


                    if (dy["SZXY_SFDEntry"] is DynamicObjectCollection Entry)
                    {
                        foreach (var item in Entry)
                        {
                            Area = Convert.ToDecimal(item["F_SZXY_AREA"]);
                            //反写日计划实际完成面积
                            RJHRowId = Convert.ToString(item["F_SZXY_RJHEntryID"]);
                            if (!RJHRowId.IsNullOrEmptyOrWhiteSpace() && Convert.ToInt32(RJHRowId) > 0)
                            {
                                string sql1 = $"/*dialect*/update SZXY_t_SFJTRSCJHEntry  set F_SZXY_ProductionArea=F_SZXY_ProductionArea+{Area} " +
                                              $" where FEntryID={RJHRowId} ";
                                DBServiceHelper.Execute(Context, sql1);
                            }
                        }
                    }
                }
            }
        }
コード例 #11
0
        /// <summary>
        /// 获取日志记录设置表表体字段(默认有单据编号字段)
        /// </summary>
        /// <param name="billkey">表标识</param>
        /// <param name="colarr">表体字段数组</param>
        /// <returns>表体字段列值</returns>
        private List <string[]> GetColKeyToArray(string billkey, params string[] colarr)
        {
            string          sql    = @"/*dialect*/ select {0}  bs.F_PAEZ_BILLNOCOL
from PAEZ_t_BillLogColSetup bs
left join PAEZ_BillLogColSetupEntry bse on bse.FID=bs.FID
WHERE BS.F_PAEZ_BILLKEY='{1}'
  AND BS.FDOCUMENTSTATUS='C'";
            string          sqlcol = "";
            DataSet         tab;
            List <string[]> datacol = new List <string[]>();

            if (colarr.Length > 0)
            {
                for (int i = 0; i < colarr.Length; i++)
                {
                    sqlcol += "bse." + colarr[i] + ",";
                    //if (i != colarr.Length - 1)
                    //    sqlcol += ",";
                }
            }
            tab = DBServiceHelper.ExecuteDataSet(Context, string.Format(sql, sqlcol, billkey));
            if (colarr.Length > 0)
            {
                for (int i = 0; i < colarr.Length; i++)
                {
                    datacol.Add(tab.Tables[0].AsEnumerable().Select(d => d.Field <string>(colarr[i])).ToArray());
                }
            }

            datacol.Add(tab.Tables[0].AsEnumerable().Select(d => d.Field <string>("F_PAEZ_BILLNOCOL")).ToArray());
            return(datacol);
        }
コード例 #12
0
        /// <summary>
        ///累加日计划面积
        /// </summary>
        /// <param name="e"></param>
        public override void EndOperationTransaction(EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);

            if (selectedRows != null && selectedRows.Count() != 0)
            {
                foreach (DynamicObject dy in selectedRows)
                {
                    string  Id   = Convert.ToString(dy["Id"]);
                    decimal Area = 0;

                    string RJHRowId = string.Empty;

                    if (dy["SZXY_BZDHEntry"] is DynamicObjectCollection Entry)
                    {
                        foreach (var item in Entry)
                        {
                            Area = Convert.ToDecimal(item["F_SZXY_AREA1"]);
                            //反写日计划实际完成面积
                            RJHRowId = Convert.ToString(item["F_SZXY_RJHEntryIDH"]);
                            if (!RJHRowId.IsNullOrEmptyOrWhiteSpace() && Convert.ToInt32(RJHRowId) > 0)
                            {
                                string sql1 = $"/*dialect*/update SZXY_t_BZRSCJHEntry  set F_SZXY_PRODUCTIONAREA=F_SZXY_PRODUCTIONAREA-{Area} " +
                                              $"  where  FEntryID={RJHRowId}";
                                DBServiceHelper.Execute(Context, sql1);
                            }
                        }
                    }
                }
            }
        }
コード例 #13
0
        public List <ListInfo> GetListInfos()
        {
            if (!string.IsNullOrWhiteSpace(GetSql()))
            {
                DynamicObjectCollection collection = DBServiceHelper.ExecuteDynamicObject(this.K3CloudContext, GetSql());
                List <ListInfo>         infos      = new List <ListInfo>();

                ListInfo info = default(ListInfo);

                if (collection != null)
                {
                    if (collection.Count > 0)
                    {
                        foreach (var item in collection)
                        {
                            info = new ListInfo();

                            info.SrcNo         = SQLUtils.GetFieldValue(item, "F_HS_ListID");
                            info.F_HS_ListID   = SQLUtils.GetFieldValue(item, "F_HS_ListID");
                            info.F_HS_ListName = SQLUtils.GetFieldValue(item, "F_HS_LISTNAME");

                            //info.F_HS_BatteryMod = SQLUtils.GetFieldValue(item, "F_HS_BatteryMod");
                            //info.F_HS_IsPuHuo = SQLUtils.GetFieldValue(item, "F_HS_IsPuHuo");
                            //info.F_HS_IsOil = SQLUtils.GetFieldValue(item, "F_HS_IsOil");

                            infos.Add(info);
                        }
                    }

                    return(infos);
                }
            }

            return(default(List <ListInfo>));
        }
コード例 #14
0
        /// <summary>
        ///累加日计划面积
        /// </summary>
        /// <param name="e"></param>
        public override void EndOperationTransaction(EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);
            IViewService Services = ServiceHelper.GetService <IViewService>();

            if (selectedRows != null && selectedRows.Count() != 0)
            {
                IMetaDataService metadataService = Kingdee.BOS.App.ServiceHelper.GetService <IMetaDataService>();
                //string SoureFormId = "SZXY_FHJTRSCJH";
                //获取单据元数据
                //FormMetadata BilMetada = metadataService.Load(Context, SoureFormId) as FormMetadata;

                foreach (DynamicObject dy in selectedRows)
                {
                    string Id = Convert.ToString(dy["Id"]);


                    if (dy["SZXY_XYLSEntry1"] is DynamicObjectCollection Entrys)
                    {
                        foreach (var item in Entrys.Where(op => !Convert.ToString(op["F_SZXY_PlasticNo1"]).IsNullOrEmptyOrWhiteSpace()))
                        {
                            string FHNo = Convert.ToString(item["F_SZXY_PlasticNo1"]);

                            if (!FHNo.IsNullOrEmptyOrWhiteSpace())
                            {
                                //改写流转状态
                                string UpdateStateSql = string.Format("/*dialect*/update SZXY_t_XYFH set  F_SZXY_Integer={0}   where F_SZXY_RecNo='{1}' ", 0, Convert.ToString(FHNo));
                                int    res            = DBServiceHelper.Execute(Context, UpdateStateSql);
                            }
                        }
                    }
                }
            }
        }
コード例 #15
0
        /// <summary>
        /// 获取库存数据
        /// </summary>
        /// <returns></returns>
        public List <InventoryInfo> GetInventorys()
        {
            string sql = GetSql();

            if (!string.IsNullOrWhiteSpace(sql))
            {
                DynamicObjectCollection collection  = DBServiceHelper.ExecuteDynamicObject(this.K3CloudContext, sql);
                InventoryInfo           inventory   = default(InventoryInfo);
                List <InventoryInfo>    inventories = new List <InventoryInfo>();

                if (collection != null)
                {
                    if (collection.Count > 0)
                    {
                        foreach (var item in collection)
                        {
                            inventory = new InventoryInfo();

                            inventory.StockId  = SQLUtils.GetFieldValue(item, "FSTOCKID");
                            inventory.SrcNo    = SQLUtils.GetFieldValue(item, "FNUMBER");
                            inventory.FixId    = SQLUtils.GetFieldValue(item, "FNUMBER");
                            inventory.Quantity = Convert.ToDouble(SQLUtils.GetFieldValue(item, "availableQOH"));

                            inventories.Add(inventory);
                        }
                    }

                    return(inventories);
                }
            }

            return(default(List <InventoryInfo>));
        }
コード例 #16
0
        /// <summary>
        /// 保存后触发
        /// </summary>
        /// <param name="e"></param>
        public override void AfterSave(AfterSaveEventArgs e)
        {
            string sql = @"/*dialect*/ insert into PAEZ_t_BillRecordLog
(FUSERID,FDATETIME,FORGID,FSUBSYSTEMID,FOPERATENAME,FCLIENTIP,F_PAEZ_Bill,F_PAEZ_ColumnName,F_PAEZ_OldValue,F_PAEZ_NewValue,F_PAEZ_DataRowNumber,F_PAEZ_BILLNAME,F_PAEZ_BILLKEY) 
values('{0}','{1}','{2}','','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}')";

            foreach (var item in colist)
            {
                if (item["Old"] != item["New"])
                {
                    DBServiceHelper.Execute(this.Context, string.Format(sql,
                                                                        Context.UserName,
                                                                        DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
                                                                        Context.CurrentOrganizationInfo.Name,
                                                                        item["OperateName"],
                                                                        Context.ClientInfo.IpAddress,
                                                                        View.BillBusinessInfo.Elements[0].Name,
                                                                        item["Column"],
                                                                        item["Old"],
                                                                        item["New"],
                                                                        item["Row"],
                                                                        billname,
                                                                        billkey));
                }
                item["Old"] = item["New"];

                //item["New"] = "";
            }
            //colist.Clear();
        }
コード例 #17
0
        private string GetColKeyTypeFoKey(string bill, string colkey)
        {
            string  sql = @"/*dialect*/ select F_PAEZ_COLTYPE from PAEZ_t_BillLogColSetup where F_PAEZ_BILL='{0}' and F_PAEZ_COLUMNKEY='{1}'";
            DataSet tab = DBServiceHelper.ExecuteDataSet(Context, string.Format(sql, bill, colkey));

            return(tab.Tables[0].Rows[0][0].ToString());
        }
コード例 #18
0
ファイル: BussnessModify.cs プロジェクト: zhuangjie666/wanyue
        public bool updateKingDeeDataBase(string model, List <string> SQLStatement, Dictionary <string, UpdateFields> updateMap, Context ctx)
        {
            List <string> statementList = new List <string>();

            foreach (KeyValuePair <string, UpdateFields> kvp in updateMap)
            {
                if (string.Equals(CustomerSQLObject.Customer, model, StringComparison.CurrentCultureIgnoreCase))
                {
                    CustomerUpdateFields customerUpdateFields = (CustomerUpdateFields)kvp.Value;
                    string statement = string.Format(SQLStatement[0], customerUpdateFields.FName, kvp.Key);
                    statementList.Add(statement);
                    CustomerFnunbers.Add(kvp.Key);
                }
                if (string.Equals(SupplierSQLObject.Supplier, model, StringComparison.CurrentCultureIgnoreCase))
                {
                    SupplierUpdateFields supplierUpdateFields = (SupplierUpdateFields)kvp.Value;
                    string statement1 = string.Format(SQLStatement[0], supplierUpdateFields.FName, kvp.Key);
                    string statement2 = string.Format(SQLStatement[1], supplierUpdateFields.FbankCode, kvp.Key);
                    string statement3 = string.Format(SQLStatement[2], supplierUpdateFields.FopenBankName, kvp.Key);
                    SupplierFnumbers.Add(kvp.Key);

                    using (KDTransactionScope trans = new KDTransactionScope(System.Transactions.TransactionScopeOption.Required))
                    {
                        if (DBServiceHelper.Execute(ctx, statement1) > 0)
                        {
                            if (DBServiceHelper.Execute(ctx, statement2) > 0)
                            {
                                if (DBServiceHelper.Execute(ctx, statement3) > 0)
                                {
                                    BussnessLog.WriteBussnessLog("", model + "更新", "更新金蝶数据库成功! fnumber=" + kvp.Key);
                                }
                                else
                                {
                                    BussnessLog.WriteBussnessLog("", model + "更新", "更新金蝶数据库失败! fnumber=" + kvp.Key);
                                }
                            }
                        }
                        trans.Complete();
                    }
                }
            }

            if (DBServiceHelper.ExecuteBatch(ctx, statementList) > 0)
            {
                foreach (string s in statementList)
                {
                    BussnessLog.WriteBussnessLog("", model + "更新", "更新金蝶数据库成功! 更新语句=" + s);
                }
            }
            else
            {
                foreach (string s in statementList)
                {
                    BussnessLog.WriteBussnessLog("", model + "更新", "更新金蝶数据库失败! 更新语句=" + s);
                }
            }

            return(true);
        }
コード例 #19
0
ファイル: SQLUtils.cs プロジェクト: abbottCheer/K3Cloud
 /// <summary>
 /// 获取表中字段的值
 /// </summary>
 /// <param name="ctx"></param>
 /// <param name="sql"></param>
 /// <returns></returns>
 public static DynamicObjectCollection GetObjects(Context ctx, string sql)
 {
     if (!string.IsNullOrWhiteSpace(sql))
     {
         return(DBServiceHelper.ExecuteDynamicObject(ctx, sql));
     }
     return(null);
 }
コード例 #20
0
        /// <summary>
        /// 同步通过Excel导入数据库的客户资料
        /// </summary>
        /// <param name="ctx"></param>
        /// <returns></returns>
        public static List <K3CustomerInfo> DownLoadCustomersByExcel(Context ctx)
        {
            string sql = string.Format(@"/*dialect*/  select * from customers a where not exists(select FNUMBER from T_BD_CUSTOMER where FNUMBER = a.customers_id) and a.customers_email_address is not null ");
            DynamicObjectCollection coll  = DBServiceHelper.ExecuteDynamicObject(ctx, sql);
            List <K3CustomerInfo>   custs = BuildSynObjByCollection(ctx, coll);

            return(custs);
        }
コード例 #21
0
ファイル: YDLCommService.cs プロジェクト: gordonjie/VTRERP
        /// <summary>
        /// 获取采购目录表
        /// </summary>
        /// <param name="ctx"></param>
        /// <param name="materilId"></param>
        /// <param name="supplierId"></param>
        /// <param name="applicationDate"></param>
        /// <returns></returns>
        public DynamicObjectCollection GetPriceListId(Context ctx, long materilId, long supplierId, DateTime applicationDate)
        {
            string strSQL = string.Format(@"select top 1 t2.FID,T2.FPRICE,T2.FTAXPRICE from  t_PUR_PriceListEntry t2   
                      inner join t_PUR_PriceList t3 on t3.FID=t2.FID where t2.FMATERIALID={0}
	              and t3.FEFFECTIVEDATE<= '{1}' and t3.FEXPIRYDATE>='{1}' and t3.FSUPPLIERID={2} 
                  and t3.FDOCUMENTSTATUS='C' and t3.FForbidStatus='A' and t2.FDisableStatus='B' order by t2.FEFFECTIVEDATE DESC ", materilId, applicationDate, supplierId);

            return(DBServiceHelper.ExecuteDynamicObject(ctx, strSQL));
        }
コード例 #22
0
 public override void EndOperationTransaction(EndOperationTransactionArgs e)
 {
     try
     {
         if (e.DataEntitys != null && e.DataEntitys.Count <DynamicObject>() > 0)
         {
             foreach (DynamicObject item in e.DataEntitys)
             {
                 string FID             = item["Id"].ToString();
                 string FSetAccountType = item["FSetAccountType"].ToString();
                 if (FSetAccountType == "2" || FSetAccountType == "1")//暂估
                 {
                     string upsql           = "";
                     string F_YBG_Assistant = item["F_YBG_Assistant_Id"].ToString();
                     string sql             = string.Format(@"select FNUMBER  From T_BAS_ASSISTANTDATAENTRY  where FENTRYID='{0}'", F_YBG_Assistant);
                     //编码
                     string FNUMBER = DBServiceHelper.ExecuteScalar <string>(this.Context, sql, "0", null);
                     if (!FNUMBER.Contains("SN"))
                     {
                         //更新暂估应收
                         upsql = string.Format(@"/*dialect*/ update t_AR_receivableEntry set FIsLockPrice=1  where FID ='{0}'", FID);
                     }
                     else
                     {
                         //更新暂估应收
                         upsql = string.Format(@"/*dialect*/ update t_AR_receivableEntry set FIsLockPrice=0  where FID ='{0}'", FID);
                     }
                     //更新锁库字段
                     DBServiceHelper.Execute(Context, upsql);
                 }
                 //else
                 //{
                 //    string upsql = "";
                 //    string sql = string.Format(@"select arel.FSID from t_AR_receivable ar inner join t_AR_receivableEntry arE on ar.FID=arE.FID
                 //                           inner join T_AR_RECEIVABLEENTRY_LK arel on arel.FENTRYID=are.FENTRYID where ar.FID='{0}'", FID);
                 //    DataSet ds = DBServiceHelper.ExecuteDataSet(this.Context, sql);
                 //    DataTable dt = ds.Tables[0];
                 //    if (dt.Rows.Count > 0)
                 //    {
                 //        for (int i = 0; i < dt.Rows.Count; i++)
                 //        {
                 //            string FSID = dt.Rows[i]["FSID"].ToString();
                 //            //更新暂估应收
                 //            upsql += string.Format(@"/*dialect*/ update t_AR_receivableEntry set FIsLockPrice=1  where FENTRYID ='{0}'", FSID);
                 //        }
                 //    }
                 //    //锁定价格
                 //    DBServiceHelper.Execute(Context, upsql);
                 //}
             }
         }
     }
     catch (Exception ex)
     {
         throw new KDException("", "保存失败:" + ex.ToString());
     }
 }
コード例 #23
0
ファイル: EntityClickPlugIn.cs プロジェクト: szzend/CLOUDDOC
        public override void EntityRowDoubleClick(EntityRowClickEventArgs e)
        {
            base.EntityRowDoubleClick(e);
            if (!e.Key.Equals(HeadEntityKey, StringComparison.CurrentCultureIgnoreCase))
            {
                return;
            }

            //通过row获取主键

            var headEntry = this.View.GetControl <EntryGrid>(HeadEntityKey);

            var headEntity = this.View.BusinessInfo.GetEntity(HeadEntityKey);
            var selectObj  = this.Model.GetEntityDataObject(headEntity, e.Row);

            if (selectObj == null || !selectObj.DynamicObjectType.Properties.Contains(HeadFidKey))
            {
                return;
            }

            this.Model.DeleteEntryData(DetailEntityKey);
            var headId = selectObj[HeadFidKey].ToString();
            //使用DataTable获取单据体信息
            string strSql    = string.Format(@"
                        SELECT 
                         T2.FNAME AS MATERIAL_NAME,
                         T3.FAMOUNT,
                         T0.FQTY
                         FROM  T_PUR_POORDERENTRY T0
                         INNER JOIN T_BD_MATERIAL T1 ON T0.FMATERIALID = T1.FMATERIALID
                         INNER JOIN T_BD_MATERIAL_L T2 ON T1.FMATERIALID = T2.FMATERIALID AND T2.FLOCALEID=2052
                         INNER JOIN T_PUR_POORDERENTRY_F T3 ON T0.FENTRYID = T3.FENTRYID
                         WHERE T0.FID ={0}", headId);
            var    entryData = DBServiceHelper.ExecuteDataSet(this.View.Context, strSql);

            if (entryData == null || entryData.Tables[0].Rows.Count == 0)
            {
                return;
            }

            for (int i = 0; i < entryData.Tables[0].Rows.Count; i++)
            {
                this.Model.CreateNewEntryRow(DetailEntityKey);
                var dr = entryData.Tables[0].Rows[i];

                var materialName = dr["MATERIAL_NAME"] ?? string.Empty;
                this.Model.SetValue(MaterialKey, materialName, i);

                var amount = dr["FAMOUNT"] ?? 0;
                this.Model.SetValue(AmountKey, amount, i);

                var qty = dr["FQTY"] ?? 0;
                this.Model.SetValue(QtyKey, qty, i);
            }

            this.View.UpdateView(DetailEntityKey);
        }
コード例 #24
0
ファイル: ReturnContacter.cs プロジェクト: chuandongwang/Star
        /// <summary>
        /// 返回供应商数据
        /// </summary>

        /// <returns>返回服务结果。</returns>
        public ServiceResult ExecuteService()
        {
            var result = new ServiceResult <List <JSONObject> >();
            var ctx    = this.KDContext.Session.AppContext;

            // 检查上下文对象
            if (this.IsContextExpired(result))
            {
                return(result);
            }
            // 检查传入参数

            //获取相关信息
            try
            {
                StringBuilder sql_builder = new StringBuilder("/*dialect*/ select v.FID ,v.FNUMBER,v1.FNAME,v.fformid as FFORMID from dbo.BAH_V_BD_CONTACT v  ");
                sql_builder.Append(" inner join dbo.BAH_V_BD_CONTACT_L v1 on v.FID = v1.FID");
                sql_builder.Append(" where v.FDOCUMENTSTATUS = 'C' and v.FFORBIDSTATUS = 'A' AND V1.FLOCALEID = 2052");
                sql_builder.Append(" order by v.FNUMBER ");
                DynamicObjectCollection query_result = DBServiceHelper.ExecuteDynamicObject(ctx, sql_builder.ToString(), null, null, System.Data.CommandType.Text);

                if (query_result.Count == 0)
                {
                    result.Code    = (int)ResultCode.Fail;
                    result.Message = "未检索到对应信息!";
                }
                else
                {
                    result.Code = (int)ResultCode.Success;
                    JSONObject        Finaldata   = new JSONObject();
                    List <JSONObject> return_data = new List <JSONObject>();
                    //构建JSONObject数据
                    foreach (DynamicObject data_obj in query_result)
                    {
                        JSONObject data = new JSONObject();
                        data.Add("FID", data_obj["FID"]);
                        data.Add("FNUMBER", data_obj["FNUMBER"]);
                        data.Add("FNAME", data_obj["FNAME"]);
                        data.Add("FFORMID", data_obj["FFORMID"]);
                        return_data.Add(data);
                    }
                    Finaldata.Add("Contacter", return_data);
                    //返回数据
                    result.Code    = (int)ResultCode.Success;
                    result.Data    = return_data;
                    result.Message = "成功返回数据!";
                }
            }
            catch (Exception ex)
            {
                result.Code    = (int)ResultCode.Fail;
                result.Message = ex.Message;
            }
            return(result);
        }
コード例 #25
0
        /// <summary>
        ///累加日计划面积
        /// </summary>
        /// <param name="e"></param>
        public override void EndOperationTransaction(EndOperationTransactionArgs e)
        {
            base.EndOperationTransaction(e);
            IViewService Services = ServiceHelper.GetService <IViewService>();

            if (selectedRows != null && selectedRows.Count() != 0)
            {
                IMetaDataService metadataService = Kingdee.BOS.App.ServiceHelper.GetService <IMetaDataService>();
                //string SoureFormId = "SZXY_FHJTRSCJH";
                //获取单据元数据
                //FormMetadata BilMetada = metadataService.Load(Context, SoureFormId) as FormMetadata;

                foreach (DynamicObject dy in selectedRows)
                {
                    string  Id       = Convert.ToString(dy["Id"]);
                    decimal Area     = 0;
                    string  RJHFid   = string.Empty;
                    string  RJHRowId = string.Empty;
                    //RJHFid = Convert.ToString(dy["F_SZXY_FIDH"]);
                    //Area = Convert.ToDecimal(dy["F_SZXY_Area"]);
                    //RJHRowId = Convert.ToString(dy["F_SZXY_RJHEntryID"]);


                    if (dy["SZXY_XYFQEntry"] is DynamicObjectCollection Entry)
                    {
                        foreach (var item in Entry)
                        {
                            Area = Convert.ToDecimal(item["F_SZXY_AREA"]);
                            //反写日计划实际完成面积
                            RJHRowId = Convert.ToString(item["F_SZXY_RJHEntryID"]);
                            if (!RJHRowId.IsNullOrEmptyOrWhiteSpace() && Convert.ToInt32(RJHRowId) > 0)
                            {
                                string sql1 = $"/*dialect*/update SZXY_t_FQJTRSCJHEntry  set F_SZXY_ProductionArea=F_SZXY_ProductionArea-{Area}," +
                                              $"  where  FEntryID={RJHRowId}";

                                DBServiceHelper.Execute(Context, sql1);
                            }
                        }
                    }

                    //string SelSql = $"/*dialect*/select * from SZXY_t_XYFQEntry where SZXY_t_XYFQEntry.Fid={Id} ";
                    //DataSet SelDS= DBServiceHelper.ExecuteDataSet(Context, SelSql);

                    //if (SelDS != null && SelDS.Tables.Count > 0 && SelDS.Tables[0].Rows.Count > 0)
                    //{

                    //}

                    string SelSql = $"/*dialect*/insert into SZXY_t_XYFQEntry select  * from SZXY_t_XYFQEntryCopy where SZXY_t_XYFQEntryCopy.Fid={Id} ";
                    DBServiceHelper.Execute(Context, SelSql);
                    string DelSql = $"/*dialect*/delete from SZXY_t_XYFQEntryCopy  where SZXY_t_XYFQEntryCopy.Fid ={Id} ";
                    DBServiceHelper.Execute(Context, DelSql);
                }
            }
        }
コード例 #26
0
 /// <summary>
 /// 审核操作服务
 /// </summary>
 /// <param name="e"></param>
 public override void EndOperationTransaction(EndOperationTransactionArgs e)
 {
     try
     {
         string sql = string.Empty;
         if (e.DataEntitys != null && e.DataEntitys.Count <DynamicObject>() > 0)
         {
             foreach (DynamicObject item in e.DataEntitys)
             {
                 //收款单id
                 string Fid = item["Id"].ToString();
                 #region 注释
                 //sql = string.Format(@"select FORDERBILLNO,FORDERENTRYID,b.FREALRECAMOUNT from T_AR_RECEIVEBILL a
                 //                      inner join T_AR_RECEIVEBILLSRCENTRY b  on a.FID=b.fid
                 //                      where a.FID='{0}'", Fid);
                 //DataSet ds = DBServiceHelper.ExecuteDataSet(this.Context,sql);
                 //DataTable dt = ds.Tables[0];
                 //if (dt.Rows.Count > 0)
                 //{
                 //    string upsql = "";
                 //    for (int i = 0; i < dt.Rows.Count; i++)
                 //    {
                 //        //订单明细内码
                 //        string FORDERENTRYID = dt.Rows[i]["FORDERENTRYID"].ToString();
                 //        //本次收款金额
                 //        decimal FREALRECAMOUNT = Convert.ToDecimal(dt.Rows[i]["FREALRECAMOUNT"].ToString());
                 //        upsql += string.Format(@"/*dialect*/ update T_SAL_ORDERENTRY set FREALRECAMOUNT={0} where FENTRYID={1}", FREALRECAMOUNT, FORDERENTRYID);
                 //    }
                 //    //更新销售订单
                 //    DBServiceHelper.Execute(Context,upsql);
                 //}
                 #endregion
                 string upsql = "";
                 //收款单源单明细
                 DynamicObjectCollection RECEIVEBILLSRCENTRYList = item["RECEIVEBILLSRCENTRY"] as DynamicObjectCollection;
                 foreach (var entry in RECEIVEBILLSRCENTRYList)
                 {
                     //销售订单明细内码
                     string FORDERENTRYID = entry["FSRCORDERENTRYID"].ToString();
                     //本次收款金额
                     decimal FREALRECAMOUNT = Convert.ToDecimal(entry["REALRECAMOUNT"].ToString());
                     upsql += string.Format(@"/*dialect*/ update T_SAL_ORDERENTRY set FREALRECAMOUNT={0}+FREALRECAMOUNT  where FENTRYID={1}", FREALRECAMOUNT, FORDERENTRYID);
                 }
                 //更新销售订单
                 DBServiceHelper.Execute(Context, upsql);
             }
         }
     }
     catch (Exception ex)
     {
         throw new KDException("", "审核失败:" + ex.ToString());
     }
 }
コード例 #27
0
        /// <summary>
        /// 实现IScheduleService的函数,实例化
        /// </summary>
        /// <param name = "ctx" ></ param >
        /// < param name="schedule"></param>
        public void Run(Context ctx, Schedule schedule)
        {
            string  orgSQL = "/*dialect*/SELECT FORGID FROM T_ORG_Organizations";
            DataSet orgds  = DBServiceHelper.ExecuteDataSet(ctx, orgSQL);

            if (orgds != null && orgds.Tables.Count > 0 && orgds.Tables[0].Rows.Count > 0)
            {
                foreach (DataRow row in orgds.Tables[0].Rows)
                {
                    string Id = Convert.ToString(row[0]);
                    for (int i = 1; i < 51; i++)
                    {
                        //流延
                        //string zttemTableName = "Z_SZXY_BGJ_XYLYList" + Id + i.ToString();
                        string ttemTableName = "Z_SZXY_BGJ_XYLYList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        //fuhe
                        //zttemTableName = "Z_SZXY_BGJ_XYFHList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYFHList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        //lashen
                        //zttemTableName = "Z_SZXY_BGJ_XYLSList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYLSList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        //fenceng
                        //zttemTableName = "Z_SZXY_BGJ_XYFCList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYFCList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        // fenceng
                        //zttemTableName = "Z_SZXY_BGJ_XYFQList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYFQList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        // SHIFA
                        //zttemTableName = "Z_SZXY_BGJ_XYSFList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYSFList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        // JIANGLIAO
                        //zttemTableName = "Z_SZXY_BGJ_XYSFList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYJLList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        // TUFU
                        //zttemTableName = "Z_SZXY_BGJ_XYTFList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYTFList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                        // BAOZHUANG
                        //zttemTableName = "Z_SZXY_BGJ_XYTFList" + Id + i.ToString();
                        ttemTableName = "Z_SZXY_BGJ_XYBZList" + Id + i.ToString();
                        updateSQL(ctx, ttemTableName);
                    }
                }
            }
        }
コード例 #28
0
        public static string GetSeeedSystemProfile(Context ctx, string key)
        {
            var sql  = string.Format(@"select FKEY,FVALUE from T_BAS_SYSTEMPROFILE 
                                        Where FCATEGORY='Hands' And FKEY = '{0}' ", key);
            var data = DBServiceHelper.ExecuteDynamicObject(ctx, sql);

            if (data == null || data.Count == 0)
            {
                return("");
            }

            return(Convert.ToString(data[0]["FVALUE"]));
        }
コード例 #29
0
 public static DynamicObject[] AutoSetPrimaryKey(this IEnumerable <DynamicObject> dataObject, Context ctx)
 {
     DynamicObject[] dataArray = dataObject.ToArray();
     if (dataArray.Any())
     {
         var group = dataArray.Select(data => new { DataEntity = data, DataType = data.DynamicObjectType })
                     .GroupBy(a => a.DataType)
                     .Select(g => new { DataType = g.Key, DataArray = g.Select(a => a.DataEntity).ToArray() })
                     .ToList();
         group.ForEach(g => DBServiceHelper.AutoSetPrimaryKey(ctx, g.DataArray, g.DataType));
     } //end if
     return(dataArray);
 }     //end method
コード例 #30
0
        /// <summary>
        /// 获取字段名
        /// </summary>
        /// <param name="billName"></param>
        /// <param name="billKey"></param>
        /// <param name="colKey">字段标识</param>
        /// <returns></returns>
        private string GetColumnName(string billName, string billKey, string colKey)
        {
            string  sql = @"/*dialect*/   select BSE.F_PAEZ_COLUMN
  from PAEZ_t_BillLogColSetup bs
  left join PAEZ_BillLogColSetupEntry bse on bse.FID=bs.FID
  WHERE BS.F_PAEZ_BILLNAME='{0}' 
  AND BS.F_PAEZ_BILLKEY='{1}'
  AND BSE.F_PAEZ_COLUMNKEY='{2}'
  AND BS.FDOCUMENTSTATUS='C'";
            DataSet tab = DBServiceHelper.ExecuteDataSet(Context, string.Format(sql, billName, billKey, colKey));

            return(tab.Tables[0].Rows[0][0].ToString());
        }