首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Python可以与Informix4GL表单通信吗?

Python可以与Informix4GL表单通信吗?
EN

Stack Overflow用户
提问于 2019-03-23 01:51:50
回答 1查看 291关注 0票数 1

我是一名Informix 4GL开发人员。由于可维护性,我的任务是编写一个包装器,以便在基于4GL表单的命令行应用程序上自动执行一些任务。

有没有人知道如何在python上做到这一点?(我也会学习其他语言,但Python是我的首选)。

我的想法是使用“键盘”来模拟按键...(丑陋的我知道)。

问题是,正如我所建议的那样,用python或其他语言重写整个应用程序并不符合我的老板的要求。(这个应用程序已经有30年的历史了,dbs也是如此……它很混乱)

EN

回答 1

Stack Overflow用户

发布于 2019-03-25 07:51:43

20年前,我将cron-job设置为

代码语言:javascript
代码运行次数:0
运行
复制
    fglgo program-name < keystrokes.txt

顾名思义,keystrokes.txt所在的位置就是手动运行程序所需的击键。这通常用于在半夜生成报告或启动批处理。

带有四个Js Genero的快速文本表明,相同的原则仍然有效。我的小测试程序是

代码语言:javascript
代码运行次数:0
运行
复制
    #! keystroketest.4gl
    MAIN
    DEFINE where_clause CHAR(100)
        OPEN FORM f FROM "keystroketest"
        DISPLAY FORM f
        MENU ""
            COMMAND "Query"
                CONSTRUCT BY NAME where_clause ON field1, field2, field3
                DISPLAY where_clause
                EXIT MENU
        END MENU
    END MAIN

    #! keystroketest.per
    SCREEN 
    {
    Field 1  [f01      ]
    Field 2  [f02      ]
    Field 3  [f03      ]
    }
    END
    ATTRIBUTES
    f01 = formonly.field1;
    f02 = formonly.field2;       
    f03 = formonly.field3;


    od -x keystroketest.txt
    0000000      3151    3030    0d1b    000a                                
    0000007

    fglrun keystroketest < keystroketest.txt
    field1='100'   

因此,keystroketest.txt发送Q(选择查询),100 (在字段中输入数据),ASCII(27),即转义。棘手的一点是将ASCII(27)放入.txt文件。

使用FourJs Genero,如果您没有添加任何GUI小部件,您仍然可以使用Informix-4gl程序执行上述操作。如果您添加了GUI小部件,您还可以使用我们的自动化测试工具(Genero Ghost Client)来执行4gl程序,并使用测试脚本将其自动化。所以,如果你不想重写这些程序,但是你想在一个现代的服务器上编译和运行它们,等等,这可能是一个选择。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55305270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档