zoukankan      html  css  js  c++  java
  • Microsoft Dynamics CRM 4.0 Plugin 取值,赋值,查询

                DynamicEntity postImageEntity = (DynamicEntity)context.PostEntityImages["PostImage"];
    
                if (postImageEntity != null)
                {
    
                    Guid new_accountId = Guid.Empty;
                    decimal new_book_credit = 0M;
                    CrmDateTime new_expiry_date = new CrmDateTime(DateTime.Now.ToString());
    
                    int new_status = 0;
    
                    //状态
                    if (postImageEntity.Properties.Contains("new_status"))
                    {
                        new_status = ((Picklist)postImageEntity.Properties["new_status"]).Value;
                    }
    
                    //经销商GUID
                    if (postImageEntity.Properties.Contains("new_account"))
                    {
                        new_accountId = ((Lookup)postImageEntity.Properties["new_account"]).Value;
                    }
    
                    decimal new_credit_line = 0M;
                    decimal new_remaining_credits = 0M;
    
                    //ColumnSet cols = new ColumnSet(new string[] { "new_credit_line", "new_remaining_credits" });
                    //account acc_entity = (account)crmService.Retrieve("account", new_accountId, cols);//这里和CRM2011不一样,
    返回的为BusinessEntity,并且这里只能取account得系统字段的值。
    //查询条件 QueryExpression query = new QueryExpression(); query.EntityName = "account"; query.ColumnSet = new ColumnSet(); query.ColumnSet.AddColumns(new string[] { "new_credit_line", "new_remaining_credits" }); //条件表达式 ConditionExpression condition = new ConditionExpression(); condition.AttributeName = "accountid"; condition.Values = new string[] { new_accountId.ToString() }; //筛选 FilterExpression filter = new FilterExpression(); filter.FilterOperator = LogicalOperator.And; filter.Conditions.Add(condition); query.Criteria.Filters.Add(filter); //查询 RetrieveMultipleRequest request = new RetrieveMultipleRequest(); request.Query = query; request.ReturnDynamicEntities = true; //响应 RetrieveMultipleResponse response = (RetrieveMultipleResponse)crmService.Execute(request); BusinessEntityCollection entityCollection = response.BusinessEntityCollection; if (entityCollection.BusinessEntities.Count == 0) return; DynamicEntity acc_entity = (DynamicEntity)entityCollection.BusinessEntities[0]; //期初信用额度 if (acc_entity.Properties.Contains("new_credit_line")) { new_credit_line = cu.RoundDecimal(((CrmMoney)acc_entity.Properties["new_credit_line"]).Value); } //剩余信用额度 if (acc_entity.Properties.Contains("new_remaining_credits")) { new_remaining_credits = cu.RoundDecimal(((CrmMoney)acc_entity.Properties["new_remaining_credits"]).Value); } cu.WriteLog("new_remaining_credits:" + new_remaining_credits); //赊销额度 if (postImageEntity.Properties.Contains("new_book_credit")) { new_book_credit = cu.RoundDecimal(((CrmMoney)postImageEntity.Properties["new_book_credit"]).Value); } cu.WriteLog("new_book_credit:" + new_book_credit); //赊销变更效期 if (postImageEntity.Properties.Contains("new_expiry_date")) { new_expiry_date = ((CrmDateTime)postImageEntity.Properties["new_expiry_date"]); } DynamicEntity accountEntity = new DynamicEntity("account"); if (!string.IsNullOrEmpty(new_book_credit.ToString())) { //信用额度 accountEntity.Properties.Add(new CrmMoneyProperty("new_credit_line", new CrmMoney(cu.RoundDecimal(new_book_credit)))); } if (!string.IsNullOrEmpty(new_expiry_date.ToString())) { //信用额度截止日期 accountEntity.Properties.Add(new CrmDateTimeProperty("new_expiration_date", new_expiry_date)); } decimal totalnew_credit_line = 0M; decimal totalnew_remaining_credits = 0M; if (string.IsNullOrEmpty(new_credit_line.ToString())) { new_credit_line = 0M; } if (string.IsNullOrEmpty(new_book_credit.ToString())) { new_book_credit = 0M; } //经销商【期初信用额度】= 起初的经销商【期初信用额度】 + 【赊销额度】 totalnew_credit_line = new_credit_line + new_book_credit; //经销商【剩余信用额度】= 起初的经销商【剩余信用额度】 + 【赊销额度】 totalnew_remaining_credits = new_remaining_credits + new_book_credit; //期初信用额度 accountEntity.Properties.Add(new CrmMoneyProperty("new_credit_line", new CrmMoney(totalnew_credit_line))); //剩余信用额度 accountEntity.Properties.Add(new CrmMoneyProperty("new_remaining_credits", new CrmMoney(totalnew_remaining_credits))); if (new_accountId != Guid.Empty) { accountEntity.Properties.Add(new KeyProperty("accountid", new Key(new_accountId))); } if (new_status == 10) { crmService.Update(accountEntity);//更新操作 } }
  • 相关阅读:
    UITableViewCell分隔线
    Swift:Debug和Release状态下错误输出
    开发中遇到的那些坑
    code sign error 1
    Xcode头文件加锁
    UIPageControl显示图片
    关于RTKLIB资料整理和学习
    I2C中24C02从地址设置
    从库函数操作RCC的流程来理解偏移变量
    对于STM32别名区的理解 (转载)
  • 原文地址:https://www.cnblogs.com/allenhua/p/3292493.html
Copyright © 2011-2022 走看看