- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
一,按照一般ERP开发流程可参考 ERP开发流程 ,直到下载程序.
当我们的查询页签存在栏位需要判断或者特殊处理时,在global中的自定义模组变数下添加,例如:
1 #add-point:自定義模組變數-客製( Module Variable) name= " global.variable_customerization" 2 3 DEFINE g_first_flag LIKE type_t.num5 4 PRIVATE TYPE type_master RECORD 5 startdate LIKE type_t.dat, 6 enddate LIKE type_t.dat 7 END RECORD 8 DEFINE g_master type_master 9 10 #end add-point
init下是对页面初始化,在页面资产初始化可以对栏位赋初值,设置下拉框等 。
#add-point:畫面資料初始化 name= " init.init" LET g_first_flag = TRUE LET g_master.startdate = '' LET g_master.enddate = '' ## CALL cpmq700_cre_tmp_table() #end add - point #或者 #add -point:畫面資料初始化 name= " init.init" CALL cl_set_combo_scc_part( ' b_imaaud001 ' , ' 18006 ' , ' 1,2 ' ) #b_imaaud001代表那个页面栏位,18006是下拉框代码 LET g_first_flag = TRUE #end add -point
ui_dialog下搜索DIALOG ATTRIBUTES,里面添加栏位的逻辑。可参考filter下的栏位逻辑.
CONSTRUCT BY NAME g_wc ON imaastus,imaa001,imaal003,imaal004,imaa009,imaa003,imaa010,imaa004,imaaud001,imaaud006 BEFORE CONSTRUCT ON ACTION controlp INFIELD imaastus ON ACTION controlp INFIELD imaa001 INITIALIZE g_qryparam. * TO NULL LET g_qryparam.state = ' c ' LET g_qryparam.reqry = FALSE CALL q_imaa001() #呼叫開窗 DISPLAY g_qryparam.return1 TO imaa001 #顯示到畫面上 NEXT FIELD imaa001 #返回原欄位 ON ACTION controlp INFIELD imaal003 ON ACTION controlp INFIELD imaal004 ON ACTION controlp INFIELD imaa009 INITIALIZE g_qryparam. * TO NULL LET g_qryparam.state = ' c ' LET g_qryparam.reqry = FALSE CALL q_rtax001() #呼叫開窗 DISPLAY g_qryparam.return1 TO imaa009 #顯示到畫面上 NEXT FIELD imaa009 #返回原欄位 ON ACTION controlp INFIELD imaa003 INITIALIZE g_qryparam. * TO NULL LET g_qryparam.state = ' c ' LET g_qryparam.reqry = FALSE CALL q_imca001_1() #呼叫開窗 DISPLAY g_qryparam.return1 TO imaa003 #顯示到畫面上 NEXT FIELD imaa003 #返回原欄位 ON ACTION controlp INFIELD imaa010 INITIALIZE g_qryparam. * TO NULL LET g_qryparam.state = ' c ' LET g_qryparam.reqry = FALSE CALL q_imaa010_1() #呼叫開窗 DISPLAY g_qryparam.return1 TO imaa010 #顯示到畫面上 NEXT FIELD imaa010 #返回原欄位 ON ACTION controlp INFIELD imaa004 ON ACTION controlp INFIELD imaaud001 ON ACTION controlp INFIELD imaaud006 END CONSTRUCT
ui_dialog下搜索accept,对判断点击后变量赋值 。
LET g_first_flag =
FALSE
b_fill下搜索b_fill.array_clear,在里面添加调用函数的逻辑 。
IF g_first_flag THEN RETURN ELSE LET ls_wc = cl_replace_str(ls_wc, ' 1=2 ' , ' 1=1 ' ) CALL cimq200_b_fill_sc(ls_wc) RETURN END IF
写自己的方法 。
PRIVATE FUNCTION cimq200_b_fill_sc(p_wc) DEFINE p_wc STRING DEFINE l_sql STRING CALL g_imaa_d.clear() LET g_cnt = l_ac IF g_cnt = 0 THEN LET g_cnt = 1 END IF LET l_ac = 1 LET l_sql = " SELECT 0 imaaseq,imaastus,imaa001,imaal003, ", " imaal004,imaa009,rtaxl003,imaa003, ", " a.oocql004,imaa004,imaa010,b.oocql004 oocql010,imaa006,imaaud001, ", " imaaud004,imaaud006,imaaud011 ", " FROM imaa_t ", " LEFT JOIN imaal_t ON imaa001=imaal001 AND imaaent=imaalent AND imaal002 = '",g_dlang,"'", " LEFT JOIN rtaxl_t ON imaa009=rtaxl001 AND imaaent=rtaxlent AND rtaxl002 = '",g_dlang,"'", " LEFT JOIN oocql_t a ON imaa003=a.oocql002 AND imaaent=a.oocqlent AND a.oocql001 = '200' AND a.oocql003 = '",g_dlang,"'", " LEFT JOIN oocql_t b ON imaa010=b.oocql002 AND imaaent=b.oocqlent AND b.oocql001 = '210' AND b.oocql003 = '",g_dlang,"'", " WHERE imaaent = ",g_enterprise, " AND ",p_wc CLIPPED DISPLAY l_sql PREPARE cimq200_b_fill_cs_pre FROM l_sql DECLARE cimq200_b_fill_cs_cur CURSOR FOR cimq200_b_fill_cs_pre FOREACH cimq200_b_fill_cs_cur INTO g_imaa_d[l_ac].* #加项次 LET g_imaa_d[l_ac].imaaseq = l_ac #料件属性显示汉字代替 CASE g_imaa_d[l_ac].imaaud001 WHEN 1 LET g_imaa_d[l_ac].imaaud001 = ' 五金 ' WHEN 2 LET g_imaa_d[l_ac].imaaud001 = ' 注塑 ' END CASE #料件是否关键物料 CASE g_imaa_d[l_ac].imaaud006 WHEN ' Y ' LET g_imaa_d[l_ac].imaaud006 = ' 是 ' WHEN ' N ' LET g_imaa_d[l_ac].imaaud006 = ' 否 ' END CASE LET l_ac = l_ac + 1 END FOREACH CALL g_imaa_d.deleteElement(g_imaa_d.getLength()) #add -point:陣列長度調整 name= " b_fill.array_deleteElement" #end add - point LET g_error_show = 0 LET g_detail_cnt = g_imaa_d.getLength() LET l_ac = g_cnt LET g_cnt = 0 #調整單身index指標,避免翻頁後指到空白筆數 CALL cimq200_detail_index_setting() #重新計算單身筆數並呈現 # CALL cimq200_detail_action_trans() #(ver: 36 ) mark LET l_ac = 1 IF g_imaa_d.getLength() > 0 THEN CALL cimq200_b_fill2() END IF CALL cimq200_detail_action_trans() #(ver: 36 ) END FUNCTION
。
最后此篇关于ERP查询Q报表开发代码的文章就讲到这里了,如果你想了解更多关于ERP查询Q报表开发代码的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
例子一 function first(a, b) { return a + b; } function second() { return Math.floor(Math.sqrt(a
我想证明或证伪forall (P Q : Prop), (P -> Q) -> (Q -> P) -> P = Q.在柯克。这是我的方法。 Inductive True2 : Prop := | O
程序提取数字,我希望它继续循环,直到用户键入“Q”/“q”键。例如,当用户按下“O”键时,程序应打印他们输入的数字的个位数,对于用户输入的任何 3 位数字,依此类推。当我现在运行代码时,没有输出,但也
我收到以下代码的警告,我不明白为什么。 类似于这个问题:Unhandled rejection reasons (should be empty) 但是…… 我很确定我正在处理所有错误,那么为什么会出
我正在使用 Express 构建一个博客站点,并且是第一次使用 Q,我希望能够利用资深 Q 用户的知识。 我向我的数据库发出一个请求以加载帖子数据,另一个请求命中 Instagram API(除非它已
我刚刚找到有关 apache solr 的信息,并且在我成功安装了带有 Tomcat 的 apache Solr 之后。然后我开始使用 Apache Solr 进行搜索。 但我对 Apache Sol
我在 Stack Overflow post 上看到了下图 但是,我对“p OR q”、“p AND q”的结果感到困惑,其中“p”等于“false”,“q”等于“unknown”。 在图中,“p O
有人向我提出了这个问题。 n = 77 n = p*q p and q is a prime number 用蛮力找到p和q。 到目前为止我的代码: public class If { pub
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 4 年前。 Improve
我注意到如果 .then()回调由于任何错误(例如对 undefined variable 的操作)而失败,并且没有 .catch()相关联,该错误将被静默忽略。 这在开发过程中很不舒服。 例如,此代
以下示例打印“SAME”: if (q/\\a/ eq q/\a/) { print "SAME\n"; } else { print "DIFFERENT\n"; } 我理解这与 d
我画了 qq 图多元回归,得到了下面的图。谁能告诉我为什么红线下面有两个点?这些点对我的模型有影响吗? 我使用下面的代码来绘制图表。 from sklearn.linear_model import
我确定 int q[6][4] 中的 q 的类型为 (**q)[4],即, 指向大小为 4 的整数数组的指针。但是我的书(我发现它很可疑!!)说函数定义中的 int q[][4] 部分 void fo
我试图用 tatics [intros]、[apply]、[assumption]、[destruct]、[left]、[right]、[split] 来证明这个引理,但失败了。谁能教教我怎么证明?
使用 q.all 时,我的数组中的立即函数似乎没有执行。每个函数都应该创建一个已解决的 promise ,将其打印到控制台,然后返回它。我没有看到控制台输出,但 Q.all 似乎很满意,并用 2 个空
我想在 OpenAI 的 Bipedal Walker v2 中实现 Q 学习,但在寻找教程后,它们似乎总是有限环境,这使得 Q 矩阵和奖励矩阵易于初始化。 例如:http://mnemstudio.
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我正在创建一个基于 AngularJS、Breeze 和 RequireJS 的单页应用程序。在使用 requirejs 设置 AMD 以使用 Angular 和 Breeze 时,我遇到了 Bree
这个问题在这里已经有了答案: Difference between defer().promise and Promise (1 个回答) 关闭 6 年前。 在 Angular 中,以下代码片段似乎
我写了一个 tcp 服务器和一个 tcp 客户端,客户端只向服务器发送数据并打印它写入了多少字节,服务器只接受连接,然后我使用 netstat 显示套接字的 Recv-Q 和 Send-问,我发现 R
我是一名优秀的程序员,十分优秀!