存档

2012年6月 的存档

如何输出格式化后的Excel单元格

2012年6月11日 没有评论

在Navision中, 经常会涉及到输出到Excel的功能.

而在输出到Excel时, 很多时候还需要进行格式化操作. 下面介绍如何实现Navision中格式化Excel单元格.

要想实现格式化, 建议直接使用xlApp, xlWorksheet对象.
然后通过xlWorkSheet的Range来对指定单元格进行格式化操作.
xlWOrkSheet.range(‘A1’).NumberFormatLocal := ‘格式化’;

下面是常见的格式化字符:

0.00% 百分比
[$-409]yyyy-mm-dd;@ 年-月-日
‘0.00 小数
@ 文本
[$-F400]hh:mm:ss;@ 时:分:秒
$#,##0.00 货币
分类: Uncategorized 标签:

Navision2013技巧之复制与粘贴

2012年6月7日 没有评论

在Nav2013Beta版本中, 带来了很多新改变, 下面将为大家介绍一个技巧, 也是一个改变.

大家都知道, 在Navision Classic客户端支持同一个Table, 在同一个客户端中进行复制/粘贴. 可以进行数据交换,而这个功能在Nav2009 RTC中不存在.  在Nav2013中, 这项功能又回来了,并进行了大大增强.

下面的内容大家可以跟着我一起尝试:

1. 打开Excel, 没错, 就是打开Excel.
2. 建立下面的表格.

Item 1000
Resource LINDA

3. Nav2013 Win Client中创建新的销售订单.
4. 在Excel中复制上面建立的表格.
5. 在销售订单行上执行 Paste Rows.


现在看看结果, 是不是复制了Excel的内容到Navision 2013客户端中?

瞧, 这就是Navision 2013中的新功能, 非常漂亮. 从此, 你真的不再需要dataport了.

 

此文基于Kine博客翻译, 大家也可以浏览原博客.

分类: NAV2013 标签:

如何在Navision调试代码时复制运行时变量信息

2012年6月6日 没有评论

在进行Navision代码调试时, 下方三个窗口常规布置将分别显示当前变量/常量信息, 语句执行顺序, 右侧显示监视的变量.(监视变量将保存到配置文件中. 有3个Watch可供使用).

实际进行调试时,进行的比较多的还是到左侧窗口查看当前变量/常量信息. 比如查看一个Function执行前/后的记录集过滤情况。而这时执行前/后的记录集已经记录信息只是提供查看,如果需要复制,仅提供值的复制。对于调试程序时,确实比较不方便。

下面为大家介绍Aqua的wText, 在执行后, 光标移动到调试程序的Table变量Filter区, 按住Ctrl键,点击鼠标左键,就完成了当前可见区的复制操作,然后到Excel/Text中粘贴来记录。

提到的工具下载地址:http://t.cn/zOk9lzs

Aqua.rar 就是文中提到的wText.

AtDebug.exe是由本人汉化的Navision Debugger中文版。

 

以上内容本博客原创,转发请注明。

分类: C/AL, Development 标签:

如何实现终端服务器下的托管打印

2012年6月4日 没有评论

有网友提出下面问题:
在NAVISION中不能直接打印,但是先把报表产生为PDF档到NAVISION服务器上,就可以打印,不知道哪位有没有遇到过这样的问题 .

我的解决方案是:

1. 客户机安装上PDFCreator
2. 终端服务器上安装PDFCreator
3. 开启终端服务器上的打印映射.
4. 配置客户机上的PDFCreator
a) 配置AutoSave
b) 配置 Save after Print, 并指定打印机。
5. 连接到终端服务器上打印时, 选择 PDFCreator from xxxx 这样的本地映射至服务器打印机. 这时就可以快速将服务器上Navision内容快速打印出来了.

 

以上解决方案,本人独家提供,如有转载,请注明。

分类: Uncategorized 标签:

每次加新的user一定要set dbowner吗?

2012年6月4日 没有评论

每次加新的user一定要set dbowner吗?

这是一网友提问,下面是我的回答。
Navision的SQL Server数据库有2种安全模型:
Standard 和 Enhanced

简单来说,Standard 表示使用Navision来接管权限. 所有权限相关的都由Navision控制

Enhanced, 就是Navision间接控制权限, Navision的权限设置后都需要同步到SQL Server. 然后SQL Server分别建立Role,Schema, 来设置权限. 这就要求用户的权限设置很仔细. 并且每次设置后都需要同步. 直接带来的效果是. Enhanced允许什么表. Query也就可以查询什么表

而Standard就不需要那么复杂了,每次增加用户,设置权限后,用户注销再登录就立刻生效了。

分类: Uncategorized 标签:

如何在Navision中快速进行指定表数据复制

2012年6月4日 没有评论

在Navision中, 如果要将表在不同公司间进行复制, 可以使用下面的方法:
1. ChangeCompany切换到目标公司
2. 目标公司表.Init;
3. 目标公司表.Transferfields(源表);
4. 目标公司表.Insert;

但是, 用上面方法对于新数据的复制可以实现. 而对于目标公司已经存在的数据. 则系统将会报错. 因为Key重复了,下面为大家介绍如果做一个通用判断Key的方法。

1. 创建RecordRef类型变量 S 和 T. S表示源表. T表示目标表.
2. 创建RecordID类型变量 RNO
3. 使用下面代码得到表ID,通常可以放在循环体外面。
S.GETTABLE(源表);
RNO:=S.RECORDID;
T.OPEN(RNO.TABLENO);
4. 下面判断目前源表的当前行在目标公司表中是否存在。
S.GETTABLE(源表);
IF NOT(T.GET(S.RECORDID)) THEN BEGIN
//下面是复制表的代码
目标表.Init;
目标表.transferfields(源表);
目标表.Insert;
END;

那么上面的代码在执行的时候就不会出现Key重复的情况了。

 

以上解决方案,在实际使用中灵活运用RecrodRef.GETTABLE 和 RecordRef.Get(RecordID) 就可以用来判断Key是否重复。

分类: Uncategorized 标签:

如何翻译Navision

2012年6月1日 没有评论

Navision翻译分为3个部分:

1. stx/etx翻译
stx文件是Navision的工作界面文件,  etx文件是Navision的错误信息提示信息文件.
比如,要把stx/etx翻译成中文, 可以进行下面的操作。
a) 新建文件夹CHS

b) 将ENU文件夹下的fin.stx / fin.etx 复制到此文件夹中

c) 使用UltraEdit这样的编辑器进行翻译内容编辑
附, stx文件结构:
m5-n5-r3-h1
m5 5位数字,表示使用模块
n5 5位数字,顺序号
r3 3位数字,最大长度.
h1 1位数字,是否允许翻译

d) 将文件进行reSeal后就可以正式使用了.

2. flm/txt翻译
这是对Navision的object进行翻译, flm是语言包的二进制文件. txt是直接导出的.
使用notepad这样的编辑器进行翻译内容编辑。

3. Help翻译
从PartnerSource下载ENU语言的Help Toolkit. 然后对html文件进行翻译. 完毕后使用html Builder进行编译, 得到CHM文件, 复制到对应的文件夹中就完成对应的帮助翻译。

分类: Installation, RTC 标签: