Null Значение суммы salesorderdetail в crm 2011-Silverlight

Я пытаюсь вставить данные в объект SalesOrderDetail, все работает нормально, за исключением поля «Сумма», которое остается нулевым. Я не получаю сообщения об ошибке. Вот пример моего кода:

private void beginCreateSalesOrderDetail()
{
    SalesOrderDetail orderDetail = new SalesOrderDetail();
    orderDetail.SalesOrderId = new EntityReference() 
    { 
       Id = id, 
       LogicalName = "salesorder" 
    };
    orderDetail.Quantity = element.QuantityOnHand;
    orderDetail.ProductId = new EntityReference() 
    { 
        Id = element.ProductId, 
        LogicalName = "product" 
    };
    orderDetail.UoMId = new EntityReference() 
    { 
        Id = new Guid("8DDD2AFB-73CF-E111-8140-00155D55B216"),        
        LogicalName = "uom" 
    };
    orderDetail.TransactionCurrencyId = new EntityReference() 
    { 
        Id = new Guid("77D695B5-ACB4-E111-97BC-00155D55B216"), 
        LogicalName = "transactioncurrency" 
    };

    Money Taxe = new Money(); 
    Money Amount = new Money();
    Taxe.Value = Convert.ToDecimal(element.totalCharges);
    Amount.Value = Convert.ToDecimal(InvoiceTotal);
    orderDetail.Tax = Taxe;
    orderDetail.BaseAmount = Amount;
    orderDetail.PricePerUnit = element.Price;
    orderDetail.Description = element.PDesc;
   _context.AddToSalesOrderDetailSet(orderDetail);
 _context.BeginSaveChanges(EndCreateSalesOrderDetail, orderDetail);

}



private void EndCreateSalesOrderDetail(IAsyncResult result)
  {

     try
     {
       _context.EndSaveChanges(result);
     }
            catch (Exception ex)
            {
            }

   }    

Обратите внимание, что только сумма, которая остается нулевой


person wben    schedule 07.01.2013    source источник
comment
является ли сумма значением валюты, как оно определено в базе данных..?   -  person MethodMan    schedule 08.01.2013
comment
Да, сумма является значением валюты.   -  person wben    schedule 08.01.2013
comment
почему бы вам не обернуть этот код вокруг try{}catch и посмотреть, получите ли вы ошибку, возможно, ошибка подавляется   -  person MethodMan    schedule 08.01.2013
comment
Вы также прошли через код с помощью отладчика ..?   -  person MethodMan    schedule 08.01.2013
comment
Конечно, без каких-либо сообщений об ошибках,   -  person wben    schedule 08.01.2013
comment
Значение суммы исходит из расчета системы CRM ??   -  person wben    schedule 08.01.2013
comment
Wben, вы можете опубликовать, какие значения вы получаете до строки, где вы пытаетесь получить сумму.. например, что такое значение налога, вам не хватает кода также в этом сообщении.. где метод .Save().. ?   -  person MethodMan    schedule 08.01.2013
comment
используя отладчик, у меня есть 150 $ в значении суммы, 10 $ в налоге   -  person wben    schedule 08.01.2013
comment
Есть ли ограничения на расчет Crm ??   -  person wben    schedule 08.01.2013
comment
Я только что протестировал этот код, используя значение 150, и строка форматирует значение как $150.00 `CultureInfo current = CultureInfo.CurrentCulture; десятичные myMoney = 150м; //форматирует как деньги в текущей культуре, например $99,99 string formattedMoney = myMoney.ToString(C, current);`   -  person MethodMan    schedule 08.01.2013
comment
Если бы вы взяли только эту строку кода CultureInfo current = CultureInfo.CurrentCulture;, каково значение current, я думаю, что это может быть проблемой, но не совсем уверен. Мне нужно знать точную стоимость, спасибо   -  person MethodMan    schedule 08.01.2013
comment
моя переменная Amount имеет тип Money, Money Amount = new Money(), затем я устанавливаю значение, которое у меня есть, например Amount.value = Convert.toDecimal(150); orderDetail.BaseAmount = Сумма; значение тока en-CA   -  person wben    schedule 08.01.2013
comment
после запуска Amount.Value = Convert.toDecemal(150); какое значение у вас есть для Amount.value ..? также, пожалуйста, поместите некоторый код в свой блок Catch.. какое значение суммы в десятичной базе данных и валюте не одно и то же, к вашему сведению   -  person MethodMan    schedule 08.01.2013


Ответы (1)


Я получаю решение. На самом деле, в crm 2011 есть ограничения для расчета количества продуктов. Мы должны создать прайс-лист и связать каждый продукт в списке. Спасибо.

person wben    schedule 08.01.2013
comment
Да, это связано с несоответствием поля «Единица измерения» между «Элемент прайс-листа» и «Детали предложения». - person Charan Raju C R; 10.01.2013