/// <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); } } } } } }
/// <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]; } } } }
/// <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); } } } }
/// <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(); }
///<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); }
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()); } }
/// <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); }
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()); } }
/// <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); } } } }
/// <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); } } } } } }
/// <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); }
/// <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); } } } } } }
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>)); }
/// <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); } } } } } }
/// <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>)); }
/// <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(); }
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()); }
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); }
/// <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); }
/// <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); }
/// <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)); }
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()); } }
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); }
/// <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); }
/// <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); } } }
/// <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()); } }
/// <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); } } } }
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"])); }
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
/// <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()); }