标签: navision

Microsoft Dynamics(Navision)与C#.NET

我是一名经验丰富的C#/ .NET开发人员,最近有机会成为Microsoft Dynamics(Navision)开发人员(培训,认证等都将由雇主支付).我从未参与任何与此动态有关的事情,所以我想问一下与C#/ .NET开发人员相比,成为Dynamics开发人员的感觉.在做出决定之前,我已经编制了一些我有兴趣知道的事情清单.请随时编辑列表.

C#/ .NET

  1. IDE:Visual Studio
  2. 语言:C#
  3. 应用程序域:基于Web或基于桌面
  4. 业务领域:任何行业
  5. 良好的职业发展和易于改变的工作
  6. 等等...

Microsoft Dynamics

  1. 相对封闭的市场(与.NET相比)
  2. 没有那么多的工作
  3. 与Visual Studio相比,IDE(或开发环境)非常糟糕,我甚至可能更喜欢在记事本中工作
  4. 与定制构建的应用程序相比,Dynamics客户可以获得哪些好处?

谢谢!

.net c# erp navision dynamics-nav

23
推荐指数
3
解决办法
2万
查看次数

添加服务引用为枚举和方法创建重复的定义

我正在使用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# wcf navision visual-studio-2010 dynamics-nav

12
推荐指数
2
解决办法
8078
查看次数

C/AL如何以及从何处开始?

我来自C#背景,用来编程来控制所有低级的东西(微控制器和硬件相关的东西).我刚换了工作,需要学习编程Dynamics NAV.我一生都没有使用数据库繁重的应用程序,所以整个学习体验对我来说非常令人沮丧.

问题:

  1. 任何新手友好的网站,以便我可以从零学习C/AL?

  2. 我可以去的任何网站都有我可以复制和学习的小项目,ala CodeProject?(CodeProject的一些东西足够小,可以用于新手学习,虽然有些东西非常庞大..)

  3. 有推荐的书吗?

  4. 有什么建议可以帮助我学习吗?

microsoft-dynamics navision dynamics-nav

7
推荐指数
1
解决办法
9282
查看次数

使用Git版本Microsoft Dynamics NAV?

我是.NET开发人员,但在我们的组织中,我们还有几个Microsoft Dynamics NAV开发人员.目前他们没有使用任何源代码控制.我对NAV知之甚少,但据我了解,你可以编写NAV中的对象并从脚本导入.

既然如此,是否有人使用GIT与NAV?你有没遇到任何陷阱?我想知道这是否是一个很好的解决方案,建议他们,以及管理是否比使用Git with .NET(我发现相当容易)更复杂.

git microsoft-dynamics navision dynamics-nav

5
推荐指数
1
解决办法
5157
查看次数

解析动态枚举

我们使用的是动态公开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)

...因为编译器抛出错误,因为我没有明确地输出枚举.

有什么想法我可以在将类型动态转换为正确的枚举时如何克服这个问题?

同样,我无法修改服务公开的实际对象,只能修改订阅服务的代码.

谢谢,乔治

c# casting navision dynamics-nav

3
推荐指数
1
解决办法
2573
查看次数

shopify navision

我正在寻找关于Shopify和Navision的答案.我们正在考虑将我们当前的网店主机改为Shopify.

但是,重要的是,我们可以让Shopify直接使用我们的会计系统--Navison(现在是Microsoft Dynamics NAV).这必须是可能的,但这种整合有多全面(和昂贵),你们中谁都有这方面的经验吗?

任何帮助将非常感激.谢谢!

integration navision shopify dynamics-nav

3
推荐指数
1
解决办法
3183
查看次数

通过Web服务实时与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

3
推荐指数
1
解决办法
1407
查看次数

Microsoft Dynamics NAV Web 服务中的日期过滤器

在 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 会有帮助吗?

microsoft-dynamics soap wsdl navision dynamics-nav

3
推荐指数
1
解决办法
6202
查看次数

Dynamics Nav(Navision)webservice ReadMultiple日期过滤器

使用Navision Web服务,如何按日期过滤.

即在SalesHeader表中有一个"ExportedDate".我想找到所有SalesHeaders,其中ExportedDate尚未设置或在特定日期导出.

似乎每当我们在日期字段上设置过滤器时,web服务将返回所有行或不返回任何行.

microsoft-dynamics navision dynamics-nav

2
推荐指数
1
解决办法
7624
查看次数

反布尔导航

是否有更简单的方法来反转布尔值而不是使用IF ELSE结构?
通常我会用!面前的布尔值.但这并不是Navision的诀窍

navision dynamics-nav

2
推荐指数
1
解决办法
656
查看次数