在第一个章节提到:Genero FGL中若用到了交谈指令,则必须要有一个客户端来进行画面的处理与呈现。最简单常用的工具就是 GDC(Genero Desktop Client)。怎麽把 GDC 玩得好,玩的巧,会比较重要。
这个段落系以鼎新 TIPTOPGP/T100 系列ERP运用的方案为主
GDC主要必须搭配FGL套件的主版本,所以若您的 FGL 套件为2.2系列的,下载3.2X GDC是无法连结的。查看FGL版本可使用『FGLRUN -V』指令,以下列出系列现行最後更新版号,若非为最後版本,可考虑更新。
GDC 从 3.X 系列起,安装过程中除路径与授权询问外,最重要的是询问是否授予安装路径的写入权,这是为了符合OS层的规范而设计的,勾选後未来才可让 autoupdate 生效,未勾选时後续仍可启动,但会无法完成 autoupdate (需要手工另外压权限)
安装完成後,建议在 Windows端给予『系统管理者』身分执行作业
系统管理者与前一个『授予写入权』是不同的事情,所以两者不可只挑其一。系统管理者是在运行过程中,若使用新PORT建立连线时不会遭到异常终止,故建议启用
此外我们可对执行参数进行一些修改後在作启动GDC
捷径的执行目标 "gdc.exe" -aD -A 0
参数说明
GDC 在2.50版本前有额外推出 ActiveX 版本,支持 ie 触发下载功能。随着微软正式宣告停止支援 ActiveX,GDC从 3.00起停止发行 ActiveX 版本
我们将第一篇的 FGLRUN与GDC关系图在做深化一些讲解:
程序利用FGLRUN 工具执行起来时,就已经会在主机的记忆体中呈现一棵程序树。但因为没有画面档的需求,或是还不需要与用户交谈,这个XML结构 (树) 不会送出。直到执行『交谈指令』才会送出。
(交谈指令为:MENU/INPUT/DISPLAY ARRAY/CONSTRUCT/PROMPT/DIALOG等)
当踩到交谈指令後,即会将此 XML结构送出;之後,再传送『有异动的部分』回到服务器。
(所以,当画面启动当下,传输量会有个小高峰,接下来传输量会降低。)
我们可以从 GDC端,透过 Ctrl-滑鼠右键,在执行出来的应用程序空白处点击,就可以把XML结构呈现出来
透过AUI TREE可以看甚麽?当然是看画面上的结构、元件、甚至是资源档读进来的内容,是否满足原先构想的需求。
举例来说:现在画面上 lbl_gzza001 到底翻译资料读进来是啥?COMBOBOX下拉式选单里面是否已经有选项?等。这些都可以透过从AUITREE的资料来确认想处理的是否已送到GDC。
将 XML 转化为实体的外显视窗、表单、元件的方式,即为渲染的意思。GDC原始透过 QT 的工具协助绘制各种对应於 OS 的视窗及控件(widget),这就是 Native Randering
现今许多桌面应用作业,都想相容於浏览器、或跨移动端执行,且个性化、客制化程度高。传统式的点击操控在浏览器介面早已被多样的控件取代。因此後续将会修改为以 Universal Randering为主,逐步停止对 Native Randering 的支持。
GDC作为一个承载渲染引擎的工具,从GDC 3.00开始,支援 Native 与 Universal 并存。
**於 GDC 4.00板起,取消 Native Randering 的支援 **
两种渲染方式,其实影响的不是程序码(4GL & PER/4FD),而是相对位置。因此,相关程序功能大多不会因为调整渲染方式而发生异动,需要检视的是画面元件,会不会因为相对位置的些微出入,造成排版上阅读不习惯。这是需要花力气在作核对的。
注:因应网路特性:浏览器基底不会支援直接让 Code 透通 OS 的底层,所以同时被关闭的功能还有 frontCALL 部分,此部分调整成因与『渲染引擎』无关,不可混为一谈。
启动後若没有调整启动通讯埠,预设为 6400,重复启动GDC (不同版本) 时,会叠加到 6401..之後
若启动 port变更,则主机上 FGL 所需要的环境变数也需要对应修改,如 export FGLSERVER=X.X.X.X:1
:1 指的就是在 6400 + 1 = 6401 (依此类推)
设定页签上有些功能可作为运用
操作遇到问题,最麻烦的就是无法理解用户当下遇到甚麽问题。所以可以透过上述『交纪录档』的方法,请用户作一下操作过程的录制。录制出来的档案提交到 MIS 或开发端,可以利用『重播』功能,观看整个操作纪录。可能是资料缺漏,或是真正遇到问题,都可以从此处看出来。
例如上方曾经提到的 AUI TREE,如果想要理解『如何被异动』,就可以点开立即查看的小视窗。此处会将收到的封包内容完整的呈现过来,此时可以观察到底是缺少设定资料,或是发生异常的段落。
** 从 FGL端也可查看,需要使用『export FGLGUIDEBUG=1』启动监测功能,与GDC相互比对
此方法通常可观测到的是网路问题,例如已经触发功能了,但 server没传递过来 (可能防火墙有开,或 roter不通之类的问题)
回到第一个页签中,曾经看过捷径的设定。基本上建议可善用此连线设定,只要将 GAS 套件提供的连线 URL 配置过来,透过点击就可以直接开启作业进行操作。省去了透过浏览器启动的动作。
下一步
从 GDC 3.20 版本起,该捷径配置还可支援『拖拉方式』,直接拖曳到桌面汇出,或拖拉到 GDC 进行汇入。此举可方便分享操作捷径,对推广系统初期,甚为便利。
GDC可运用的配置项目还有许多,但仍受到 OS 与第三方搭配软件 (如 QT) 的版本牵制,以致於许多设定或异常并没有办法及时修复。期望後续在调整为 Universal Randering 之後,能趋向於即知即改,避免用户作过多的替代方案。
>>: 前端工程师也能开发全端网页:挑战 30 天用 React 加上 Firebase 打造社群网站|Day17 文章留言功能
什麽是 Web NFC? NFC (Near Field Communication) 近场通讯是高...
在 软件开发的用户需求哪里来? 此篇有和大家分享过常见的需求来源,但实际上到底要怎麽进行又是另外一件...
昨天简略的介绍了今天会布署的NATS,虽然NATS Streaming要被弃用了,不过我还是会介绍一...
小结 前两天讲了几个比较重要的 Dockerfile best practice 之後,今天要来说一...
为什麽会议,大家听不到我声音,却能听到我的音乐啊~~~~ 设来设去...到底怎麽回事啊... 答案是...