前篇『[GAS] GBC上运作的Hello world! 』讨论到可以透过自订 xcf档案,手工挂载到 GAS的执行路径下提供 WEB APP的作法。但繁复的手工肯定浇熄了不少热情。
在Genero 3.X以後的版本,提供 WEB版的部署介面机制,连 xcf 的制作都可以省下来了 (复杂情况还是需要补上手调),可以减少许多工作量。
一个已经完成画面档(PER/4FD, 42f)、程序可执行档(4GL, 42m, 42r)测试验证的作业,可以很容易地放上网页运作。
此处需要42r档案,以便兼容後续的许多扩展。42r是一种纪录程序中function坐落在哪个42m的半文字纪录档 (具有一半的binary code但还是可以透过全文检索,看出重要想查的资料)。
简易单个42m 打包为42r的做法 (如helloworld.42m要打包成 helloworld.42r)
fgl2p -o helloworld.42r helloworld.42m
复杂多个42m 打包为42r的作法 (如 hello.42m/world.42m 要打包成 helloworld.42r)
fgl2p -o helloworld.42r hello.42m world.42m
或
fgllink -o helloworld.42r hello.42m world.42m
fgl2p 与 fgllink都是提供连结的工具,差异点在 fgl2p会主动将 WSHelper.42m 这个延伸GWS模组放上,操作较为方便。
42r档案内只有写 42m模组(module)名称,并不带上42m档案在哪个路径。路径资料会是 FGLLDPATH环境变数所提供。也就是说:fglrun执行的过程中,先读取 42r理解到要调用的function存在於哪个42m,再回头从 FGLLDPATH 提供的路径清单,『逐一搜寻』该42m的位置。这也是为什麽 FGLLDPATH 区域内不可存在同名 function的主要原因。(无法让 fgllink辨识到底要连结谁)
为了执行模组清晰,建议将要用到的 42m先放在相同路径下 (否则要在 xcf中配置 FGLLDPATH这个 ENVIRONMENT_VARIABLE 较为麻烦,若这句说明不太清楚,请参考:[GAS] 启动配置档as.xcf设定详解 )
将 hello world档案放置在 test-gar 目录下,例如:
可用 fglgar 指令进行打包
fglgar gar --application hello.42r
正常产出完成时,回应 Finished. 以上指令处理的是带有画面的 WEB Application
若是没有画面的 WEB Service,则请用下列指令
fglgar gar --service hello.42r
完成打包後,会 ** 以最後一层目录为名,产出一个 gar 档案 **,这个档案就可作为快速部署用。
fglgar会协助在打包当下,产生 MANIFEST 说明档案,以及 hello.42r 的 as.xcf格式配置档案,共同放入gar中,若须要自行维护,则可以用 -s 的方式自行传入。
打开前篇 [GIP] Genero守门员 -简化版单点登入SSO配置与运行 从 demos.html 进入,可设定部署的 Deployment页面:
登入後,会执行出下列介面
中间的 Genero Archives... 就是可以协助部署的Deployment页面,点入後如下图:
开始部署时,点选 Deploy後,会出现要求将 gar 档上传的画面 (档案打包完後可利用 sz/rz 或 ftp等工具自行抓取下来)
上传完成後,可在下方看到 test-gar.gar 的档案资讯,以及里面的 hello.xcf 配置
此时上方的功能按键,可以看到 Enable / Secure 已亮起,表示若我们点下 Enable 後,就可完成部署使用
生效後,我们即可连上 http://server-ip:6394/ua/r/XCF名字 查看成果。(是否为 :6394或 wtopprd 要看选择的是 standalone的执行port 6394 或是使用 fastcgidispatch的绑定路径,请回头看GAS as.xcf配置段落)
如果要调整应用程序的权限,则必须先进行 Disable 还原到 Inactive状态 (也就是上上图Enable灯亮起的状态),此时才能点选 Secure 进行配置
点击 Secure 後不要急着 Enable,还没设定呢,接着使用右侧的 Configure进行配置
查阅上述讯息,我们在
做这麽多当然是 Yes,确认後可回主要设定页,可以看到 hello.xcf 的 secure已被勾选
重新 enable 後,在做一次执行,就可以看到被要求登入的画面 (如下),而且该身分还要符合 Admin 才可以执行
透过这样的方式,可以很容易将开发出来的档案进行配置成 WEB Application的动作,并且授权给适当的人员使用。
>>: Day 26 - HBuilderX 与 Native.js API 读取图片
其实这步我们也是过很久才来做 应该要最开始就先做了 可以避免做出一个只有自己需要的东西 但如果是自己...
AND和&&是相同的意思 AND运算子是左右两边结果为1,就回传1,否则回传0 Ti...
设置 Table 我们需要定义资料库名称与版本 将建立 Table 的 SQL 写在这 onCrea...
想要在网路上取得台股最新的股价有许多种方式,其中一种免费的方式就是直接向证交所网站取得股价资料,这次...
昨天介绍完Create-react-app的开发,今天就来介绍一下Create-react-app的...