我是Dynamics Ax的新手,并且有大量的问题:
*您使用什么计算机编程语言来编写Ax中的新功能?是C#?
*当你进行编码时,是否会在Visual Studio 2010中进行?
*如果ERP使用C#作为编码语言,是来自winform或Windows演示基础的C#吗?
*当您开始在公司实施时,Axe正在使用的IT架构的主要标准是什么?N层与演示,业务和数据层?
*Dynamics是否已构建Microsoft Business Intelligence?
*它使用什么对象关系映射(ORM)框架从数据层检索数据到表示层?实体框架,Nhibernate,Dataset?
*如果客户有三个数据库工具,即SQL服务器,Oracle和MySQL,这些工具需要在Dynamics Ax中使用,Ax是否有工具将这些数据库及其数据合并为一个单元?也许你需要使用SSIS等.
// Fullmetalboy
在表单中,当创建新记录时,它将插入到表中,在数据源中可以覆盖哪个方法(插入方法不可用)以在使用X ++插入Microsoft Dynamics AX 2009期间处理某些功能?
我收到了错误
操作数类型与运算符不兼容
在尝试比较两个"真实"数据类型时的标题中.
任何人都可以帮我解决错误吗?
public void clicked()
{
real localAnnualUsage = itemSetup_DS.AnnualUsage();
real localSalesPrice = itemSetup.StockPrice;
real localCost = itemSetup.StockCost;
real localstockInventAvg = itemSetup.StockInventAvg;
real localTurnAndEarn;
real localAnnualGP;
real localAvgInvCost;
;
localAvgInvCost = itemSetup.StockInventAvg;
if (localStockInventAvg != itemSetup_StockInventAvg)
{
localAvgInvCost = itemSetup_StockInventAvg;
}
//...
}
Run Code Online (Sandbox Code Playgroud)
错误发生在条件行上.
我正在尝试使用addselectionfield选择4个字段.来自那4个字段2的是聚合(和)字段.
我正在做以下事情:
date fromDate = systemDateGet();
date toDate = (systemDateGet() + 25);
query = new Query();
qbds = query.addDataSource(tableNum(MyTable));
qbds.addSelectionField(fieldNum(MyTable, DateField));
qbds.addSelectionField(fieldNum(MyTable, USDAmountField), SelectionField::Sum);
qbds.addSelectionField(fieldNum(MyTable, CurrencyNameField));
qbds.addSelectionField(fieldNum(MyTable, EURAmountField), SelectionField::Sum);
qbr = qbds.addRange(fieldNum(MyTable, DateField));
qbr.value(queryRange(fromDate, toDate));
queryRun = new QueryRun(query);
Run Code Online (Sandbox Code Playgroud)
在调试时,我在queryRun中得到以下select语句:
SELECT SUM(EURAmountField) FROM MyTable(MyTable_1)
WHERE ((DateField >= {ts '2014-04-01 00:00:00.000'}
AND DateField <= {ts'2014-04-26 00:00:00.000'}))
Run Code Online (Sandbox Code Playgroud)
那么是什么原因它只选择最后一个addSelectionField以及我必须做什么来获取我在addSelectionFields中编写的所有字段?
我有这个功能可以从CSV文件更新价格清单,但需要花费太长时间才能完成(9小时aprox.).
结构文件有2个主要部分,记录行(行)和10个可能的维度(不是AX维度)的价格类型(列).
它已经在运行,但客户要求替代方案,因为该过程需要太多时间才能完成.
我正在尝试执行以下代码:
static void ProjTableQuery(Args _args)
{
Query query;
QueryBuildDataSource qbds1;
QueryBuildDataSource qbds2;
QueryBuildRange qbr1;
QueryBuildRange qbr2;
QueryRun queryRun;
ProjTable projTable;
query = new Query();
qbds1 = query.addDataSource(tableNum(ProjTable));
qbds1.addSortField(
fieldNum(ProjTable, Name),
SortOrder::Ascending);
//qbr1 = qbds1.addRange(fieldNum(ProjTable, Type));
//qbr1.value(queryValue(ProjType::FixedPrice));
qbr2 = qbds1.addRange(fieldNum(ProjTable, ProjId));
qbr2.value(queryValue('0') + '*');
qbds2 = qbds1.addDataSource(tableNum(ProjEmplTrans));
qbds2.relations(true);
qbds2.joinMode(JoinMode::InnerJoin);
queryRun = new QueryRun(query);
while (queryRun.next())
{
projTable = queryRun.get(tableNum(ProjTable));
info(strFmt("%1 %2 %3", projTable.ProjId, projTable.Name, projTable.Type));
}
}
Run Code Online (Sandbox Code Playgroud)
注释掉的那两行可以正常工作.但是,如果我取消注释它们,它将不再运行,并且不会显示任何错误消息.
就我所见,ProjType是一个枚举,我确信我在SQL中检查了FixedPrice值.
我想拆分字符串.
如果我的代码:
Question #1
value = "001#$002#$003";
strList = strsplit(value,"#$");
result: "001", "", "002", "", "003";
//if i using spliter like "$" it is ok. result: "001", "002","003";
Question #2
str2con(value,"#$");
result: "1", "2","3" missing zeros
我想更改地图中键的值。我该怎么做?是否可以?
我只找到了方法 insert(_key,_value) 但我不想用值创建新键,而是更改现有键的值。
我想为AX 2012提供样本数据,并为每个数据类型字段添加3年:datetime.
我知道有dateadd函数,我可以单独更新每个字段,只是不确定如何搜索数据库并找到datetime类型的每个字段并执行更新.
也许构建一个包含该类型所有字段的临时表?
我是sql的新手所以请温柔...
我发现,在开发期间,对同一服务进行多次部署时,AIF服务会中断,当您访问入站端口时会出现神秘错误.您可以通过打开AIF服务表单(AOT,表单,AIF服务)并单击"刷新"按钮来刷新AIF服务.完成大约需要15分钟.
关于为什么需要这么长时间以及实际做什么的任何想法?
谢谢.
是否有一种仅使用枚举的标签而不是值来查找枚举的快速方法。假设枚举类型是 SalesStatus,我希望能够基本上调用某种函数,例如 enumLabel2Value(enumStr(SalesStatus), "Open order") 并且它将返回 1。
我试图避免遍历所有可能的值并分别检查每个值,这似乎应该是很容易获得的东西,因为每当用户过滤网格上的枚举列时,他们都会输入标签,而不是值,但我没有见过类似的东西。
在Dynamics AX 2012 中,当尝试更新字段的值DlvMode或在销售订单中添加新的交货地址时(通过标题视图),我不断收到此错误:
函数 SalesTable2LineField.lineUpdateDescription 使用不当
此方法或此类中没有自定义。
我正在尝试使用 odata 从邮递员发布采购订单行详细信息,但出现以下错误。
{
"error": {
"code": "",
"message": "An error has occurred.",
"innererror": {
"message": "Write validation failed for table row of type 'PurchPurchaseOrderLineEntity'. Infolog: .",
"type": "Microsoft.Dynamics.Platform.Integration.Services.OData.AxODataValidateWriteException",
"stacktrace": " at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.UpdateProcessor.CreateEntity_Save(ChangeOperationContext context, ChangeInfo changeInfo)\r\n at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.UpdateManager.<>c__DisplayClass10_0.<CreateEntity>b__1(ChangeOperationContext context)\r\n at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.ChangeInfo.ExecuteActionsInCompanyContext(IEnumerable`1 actionList, ChangeOperationContext operationContext)\r\n at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.ChangeInfo.TrySave(ChangeOperationContext operationContext)\r\n at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.UpdateManager.SaveChanges()\r\n at Microsoft.Dynamics.Platform.Integration.Services.OData.AxODataDelegatingHandler.<SaveChangesAsync>d__3.MoveNext()"
}
}
Run Code Online (Sandbox Code Playgroud)
}
我尝试检查这些链接,但没有取得突破:
下面是我的有效负载
{
"dataAreaId": "XXXX",
"LineNumber": 1,
"PurchaseOrderNumber": "XXXX-PO-000009",
"ReceivingSiteId": "1",
"LineDescription": "XXXXXXX XXXX XXXX",
"ItemNumber": "SKU0000012530",
"DIOTOperationType": "Blank",
"LineAmount": 9687.19,
"PurchasePriceQuantity": 1,
"PurchasePrice": …Run Code Online (Sandbox Code Playgroud)