我是一名经验丰富的C#/ .NET开发人员,最近有机会成为Microsoft Dynamics(Navision)开发人员(培训,认证等都将由雇主支付).我从未参与任何与此动态有关的事情,所以我想问一下与C#/ .NET开发人员相比,成为Dynamics开发人员的感觉.在做出决定之前,我已经编制了一些我有兴趣知道的事情清单.请随时编辑列表.
C#/ .NET
Microsoft Dynamics
谢谢!
我正在使用Add Service ReferenceVisual Studio 2010中的功能将Navision Web服务添加到简单的Windows窗体应用程序中,生成引用但在代码内部存在重复的定义,这些定义会阻止代码编译,例如:
错误
命名空间"WindowsFormsApplication1.ServiceReference1"已经包含了"状态"下的定义:\垃圾桶\ WindowsFormsApplication1\WindowsFormsApplication1 \服务引用\ ServiceReference1\Reference.cs
在Reference.cs我的内心
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.1015")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="urn:microsoft-dynamics-schemas/page/salesheaderpage")]
public enum Status {
/// <remarks/>
Open,
/// <remarks/>
Released,
/// <remarks/>
Pending_Approval,
/// <remarks/>
Pending_Prepayment,
}
Run Code Online (Sandbox Code Playgroud)
和
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
[System.Runtime.Serialization.DataContractAttribute(Name="Status", Namespace="urn:microsoft-dynamics-schemas/page/salesheaderpage")]
public enum Status : int {
[System.Runtime.Serialization.EnumMemberAttribute()]
Open = 0,
[System.Runtime.Serialization.EnumMemberAttribute()]
Released = 1,
[System.Runtime.Serialization.EnumMemberAttribute()]
Pending_Approval = 2,
[System.Runtime.Serialization.EnumMemberAttribute()]
Pending_Prepayment = 3,
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试取消选中,Reuse types in referenced assemblies但在两种情况下仍然会生成重复的定义.
有任何想法吗?
编辑:页面是连接到标准表36(销售标题)的自定义页面
我来自C#背景,用来编程来控制所有低级的东西(微控制器和硬件相关的东西).我刚换了工作,需要学习编程Dynamics NAV.我一生都没有使用数据库繁重的应用程序,所以整个学习体验对我来说非常令人沮丧.
问题:
任何新手友好的网站,以便我可以从零学习C/AL?
我可以去的任何网站都有我可以复制和学习的小项目,ala CodeProject?(CodeProject的一些东西足够小,可以用于新手学习,虽然有些东西非常庞大..)
有推荐的书吗?
有什么建议可以帮助我学习吗?
我是.NET开发人员,但在我们的组织中,我们还有几个Microsoft Dynamics NAV开发人员.目前他们没有使用任何源代码控制.我对NAV知之甚少,但据我了解,你可以编写NAV中的对象并从脚本导入.
既然如此,是否有人使用GIT与NAV?你有没遇到任何陷阱?我想知道这是否是一个很好的解决方案,建议他们,以及管理是否比使用Git with .NET(我发现相当容易)更复杂.
我们使用的是动态公开Web服务的Microsoft ERP.服务生成的服务不受我们控制.我们没有说明如何创建和公开对象,包括类型定义.当从Web服务添加或删除新方法时,所有类型枚举都将重新编号,并且在更新到新定义之后,使用Web服务的所有内容都会被重新填充.基本上,
enumeration Type1
Item1
Item2
Item3
Run Code Online (Sandbox Code Playgroud)
......可能会变成
enumeration Type6
Item1
Item2
Item3
Run Code Online (Sandbox Code Playgroud)
...枚举类型名称更改,但该类型的成员保持静态.该服务输出的服务看起来与使用XSD.exe生成对象的最终结果完全相同.因此,只要有人在服务上公开新方法(通过ERP GUI),就会重建对象,按字母顺序将类型分配给服务定义,重新暴露,留下整个代码库.
我尝试使用反射来确定类型,然后将静态成员解析为新的业务对象,但它不起作用,因为我不能在不知道类型的实际名称的情况下键入强制转换枚举.以下方法无效.
System.Type t = service.BusinessObjectEnumeration.GetType();
service.SomeField = Enum.Parse(t,"Item1");
Run Code Online (Sandbox Code Playgroud)
...因为编译器抛出错误,因为我没有明确地输出枚举.
有什么想法我可以在将类型动态转换为正确的枚举时如何克服这个问题?
同样,我无法修改服务公开的实际对象,只能修改订阅服务的代码.
谢谢,乔治
我正在寻找关于Shopify和Navision的答案.我们正在考虑将我们当前的网店主机改为Shopify.
但是,重要的是,我们可以让Shopify直接使用我们的会计系统--Navison(现在是Microsoft Dynamics NAV).这必须是可能的,但这种整合有多全面(和昂贵),你们中谁都有这方面的经验吗?
任何帮助将非常感激.谢谢!
我想编写一个.NET应用程序,它将与Dynamics NAV 2009和2013实时接口.应用程序必须读取和更新客户和库存项目等实体.
使用提供的Web服务似乎是集成的最佳候选者,我尝试了一些基于Pages和.net客户端使用webservices读取,更新和创建项目的基本测试.
不幸的是,我对Dynamics很新,我有一些问题可能反映了缺乏经验.
首先 - webservices可以公开Page或Codeunits.Page是否是用于连接的正确选项 - 创建客户?
其次 - 我的理解是动态资产净值很少在没有定制的情况下部署.NAV中的典型自定义(例如添加字段)是否涉及更改标准页面,这种变化是否会反映在Web服务定义中?
web-services navision dynamics-nav dynamics-nav-2013 dynamics-nav-2009
在 php 中向 webservice 发送过滤器时一切正常,但是当我们需要对日期进行排序时,我们遇到了问题。我们需要在某个日期之后修改所有对象。
在页面中,我们有一个日期元素,如下所示:
<xsd:element minOccurs="0" maxOccurs="1" name="Last_Date_Modified" type="xsd:date"/>
Run Code Online (Sandbox Code Playgroud)
我们已经尝试了在 SO 上解释的解决方案:
Dynamics Nav (Navision) webservice ReadMultiple date filter
但是我们的日期格式有点不同,我们的看起来像: 2013-01-01
在我们的过滤器中,我们尝试了以下方法:
array(
'Field' => 'Last_Date_Modified',
'Criteria' => '20130101..'
)
Run Code Online (Sandbox Code Playgroud)
以及其他一些变体,但它不返回任何内容。如果我们将其留空,它将返回所有内容。有没有人知道我们可以做什么?如果我们以某种方式将 last_modified_date 存储为像 unix 时间戳这样的 bigint 会有帮助吗?
使用Navision Web服务,如何按日期过滤.
即在SalesHeader表中有一个"ExportedDate".我想找到所有SalesHeaders,其中ExportedDate尚未设置或在特定日期导出.
似乎每当我们在日期字段上设置过滤器时,web服务将返回所有行或不返回任何行.
是否有更简单的方法来反转布尔值而不是使用IF ELSE结构?
通常我会用!面前的布尔值.但这并不是Navision的诀窍
dynamics-nav ×10
navision ×10
c# ×3
.net ×1
casting ×1
erp ×1
git ×1
integration ×1
shopify ×1
soap ×1
wcf ×1
web-services ×1
wsdl ×1