string ls_syntax, ls_width, ls_codetype
SELECT byfq_input_card INTO :ls_codetype FROM byfq_tableinfo WHERE byfq_tablename = :as_tablename AND byfq_tabletype = '1';
ls_width = f_get_token( ls_codetype, "_" )
IF ls_width = '' THEN ls_width = '4'
as_tablename = Lower( as_tablename )
ls_syntax = 'release ' + is_ver + ';~r~n'
ls_syntax = ls_syntax + 'datawindow(units=0 timer_interval=0 color=12632256 processing=1' + &
' print.documentname=""' + &
' print.orientation = 0 print.margin.left = 110 print.margin.right = 110 print.margin.top = 96 print.margin.bottom = 96' + &
' print.paper.source = 0 print.paper.size = 0 print.prompt=no print.buttons=no print.preview.buttons=no' + &
' grid.lines=0 selected.mouse=no )~r~n'
ls_syntax = ls_syntax + 'header(height=76 color="536870912" )~r~n'
ls_syntax = ls_syntax + 'summary(height=0 color="536870912" )~r~n'
ls_syntax = ls_syntax + 'footer(height=0 color="536870912" )~r~n'
ls_syntax = ls_syntax + 'detail(height=88 color="536870912" )~r~n'
ls_syntax = ls_syntax + 'table(' + &
'column=(type=char(' + ls_width + ') update=yes updatewhereclause=yes key=yes name=byfq_code dbname="' + as_tablename + '.byfq_code" )~r~n' + &
'column=(type=char(40) update=yes updatewhereclause=yes name=byfq_value dbname="' + as_tablename + '.byfq_value" )~r~n' + &
'column=(type=char(1) update=yes updatewhereclause=yes name=byfq_isuse dbname="' + as_tablename + '.byfq_isuse" initial="1" values="常用 1/常用 0" )~r~n' + &
'column=(type=char(240) update=yes updatewhereclause=yes name=byfq_comment dbname="' + as_tablename + '.byfq_comment" )~r~n' + &
'column=(type=char(10) update=yes updatewhereclause=yes name=byfq_othercode dbname="' + as_tablename + '.byfq_othercode" )~r~n'
ls_syntax = ls_syntax + 'retrieve="PBSELECT( VERSION(400) TABLE(NAME=~~"' + as_tablename + '~~" )' + &
' COLUMN(NAME=~~"' + as_tablename + '.byfq_code~~")' + &
' COLUMN(NAME=~~"' + as_tablename + '.byfq_value~~")' + &
' COLUMN(NAME=~~"' + as_tablename + '.byfq_isuse~~")' + &
' COLUMN(NAME=~~"' + as_tablename + '.byfq_comment~~")' + &
' COLUMN(NAME=~~"' + as_tablename + '.byfq_othercode~~"))' + &
' ORDER(NAME=~~"' + as_tablename + '.byfq_code~~" ASC=yes )' + &
'" update="' + as_tablename + '" updatewhere=1 updatekeyinplace=no )~r~n'
ls_syntax = ls_syntax + 'text(band=header alignment="2" text="代码"border="6" color="0" x="9" y="8" height="60" width="315" name=byfq_code_t font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'text(band=header alignment="2" text="代码表达的含义"border="6" color="0" x="334" y="8" height="60" width="649" name=byfq_value_t font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'text(band=header alignment="2" text="常用"border="6" color="0" x="992" y="8" height="60" width="224" name=byfq_isuse_t font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'text(band=header alignment="2" text="说明"border="6" color="0" x="1550" y="8" height="60" width="2231" name=byfq_comment_t font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'text(band=header alignment="2" text="标准代码"border="6" color="0" x="1225" y="8" height="60" width="325" name=byfq_comment_t font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'column(band=detail id=1 alignment="1" tabsequence=10 border="5" color="0" x="9" y="8" height="72" width="315" format="[general]" name=byfq_code tag="代码" edit.limit=' + &
ls_width + ' edit.case=any edit.focusrectangle=no edit.autoselect=yes edit.autohscroll=yes font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'column(band=detail id=2 alignment="1" tabsequence=20 border="5" color="0" x="334" y="8" height="72" width="649" format="[general]" name=byfq_value tag="代码表达的含义" edit.limit=40 edit.case=any edit.focusrectangle=no edit.autoselect=yes edit.autohscroll=yes font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'column(band=detail id=3 alignment="1" tabsequence=30 border="0" color="0" x="997" y="8" height="72" width="219" format="[general]" name=byfq_isuse tag="常用" checkbox.text="常用" checkbox.on="1" checkbox.off="0" checkbox.scale=no checkbox.threed=yes font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'column(band=detail id=4 alignment="0" tabsequence=50 border="0" color="0" x="1550" y="8" height="72" width="2231" format="[general]" name=byfq_comment tag="说明" edit.limit=240 edit.case=any edit.focusrectangle=no edit.autoselect=yes edit.autohscroll=yes font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'column(band=detail id=5 alignment="1" tabsequence=40 border="5" color="0" x="1225" y="8" height="72" width="325" format="[general]" name=byfq_othercode tag="标准代码" edit.limit=40 edit.case=any edit.focusrectangle=no edit.autoselect=yes edit.autohscroll=yes font.face="宋体" font.height="-10" font.weight="400" font.family="0" font.pitch="2" font.charset="134" background.mode="1" background.color="536870912" )~r~n' + &
'htmltable(border="1" cellpadding="0" cellspacing="0" generatecss="no" nowrap="yes")~r~n'
dw_1.Create( ls_syntax )
dw_1.SetTransObject( sqlca )
IF dw_1.Retrieve() <= 0 THEN dw_1.InsertRow(0)
return 1
---------------------------------------------------------------
global type f_createextenddw from function_object
end type
forward prototypes
global function string f_createextenddw (ref datawindow dw, string cols[])
end prototypes
global function string f_createextenddw (ref datawindow dw, string cols[]);string sql_dw_general, sql_dw_columns_type, sql_dw_headers_conf, sql_dw_columns_conf, ls_errors
int i
long ll_colcount
string ls_colnametype
string ls_colname,ls_coltype
long ll_pos
ll_colcount = upperbound(cols)
//generals
sql_dw_general = "release 8;" &
+ "datawindow(units=0 timer_interval=0 color=16777215 processing=0 print.documentname=" + char(34) + "" + char(34) + " print.orientation = 0 print.margin.left = 110 print.margin.right = 110 print.margin.top = 96 print.margin.bottom = 96 print.paper.source = 0 print.paper.size = 0 print.prompt=no print.buttons=no print.preview.buttons=no )" &
+ "header(height=72 color=" + char(34) + "536870912" + char(34) + " )" &
+ "summary(height=0 color=" + char(34) + "536870912" + char(34) + " )" &
+ "footer(height=0 color=" + char(34) + "536870912" + char(34) + " )" &
+ "detail(height=84 color=" + char(34) + "536870912" + char(34) + " )"
//列及类型
sql_dw_columns_type = "table("
FOR I=1 to ll_colcount
ls_colnametype = trim(cols[i])
ls_colname = right(ls_colnametype,len(ls_colnametype) - 1)
ls_coltype = left(ls_colnametype,1)
choose case upper(ls_coltype)
case 'C'
ls_coltype = 'char(100)'
case 'D'
ls_coltype = 'date'
case 'N'
ls_coltype = 'decimal(6)'
case else
ls_coltype = 'char(100)'
end choose
//ls_coltype = 'char(100)'
//列及类型
sql_dw_columns_type= sql_dw_columns_type + "colu
相关推荐
Android VOLUME_EXTERNAL 和VOLUME_EXTERNAL_PRIMARY区别
返回构成 VOLUME_EXTERNAL 的所有特定卷名称的列表(即,包括手机内部存储和SD卡存储的名称列表)。这包括当前连接的每个共享存储设备的唯一卷名称,通常包括 MediaStore#VOLUME_EXTERNAL_PRIMARY。每个特定的卷名称都可以传递给 MediaStore.Images.Media#getContentUri(String) 等 API,以与该存储设备上的媒体进行交互。VOLUME_EXTERNAL_PRIMARY只包括手机内部存储。
何时在声明函数时使用EXTERNAL
<br /><br />EXTERNAL is needed in a variety of situations: <br />- If you pass a subroutine name to a subroutine and there is no explicit interface (as was the case in FORTRAN 77), EXTERNAL makes it clear to the compiler a subroutine is meant.<br />- I
Android存储权限终极梳理:从READ_EXTERNAL_STORAGE到MANAGE_EXTERNAL_STORAGE的演进之路
本文全面解析Android存储权限体系的演进历程,从基础权限到Android 10引入的分区存储(Scoped Storage)机制,再到Android 11的MANAGE_EXTERNAL_STORAGE特权。通过详细的技术分析和实战代码示例,帮助开发者高效适配新版存储模型,确保应用在隐私保护与功能完整性之间取得平衡。
【PB】创建数据窗口时数据源的使用方式
PB提供5种数据源:Quick Select(快速选择类型)、SQL Select(SQL选择类型)、Query(查询类型)、External(外部类型)和Stored Procedure(存储过程类型)。
[Kubernetes]External-dns +CoreDns 安装
我们知道Ingress可以对集群中的服务进行DNS解析,意即我们可以通过类似http://nginx.demo.com/api 的方式访问集群中的服务,当然前提是,要在/etc/hosts中添加如下内容:external-dns 就是为了进一步简化这个问题,external-dns每隔一段时间会去查询Ingress,获得Ingress中的数据,然后push到其provider中,这里演示的是coredns。必须说明一下,这里使用coredns演示,而coredns只能用于集群内部使用。.........
SAP External Material Number Persistence 实战拆解,别让 Fiori 搜索输在 MARA-MATNR_EXTERNAL 上
很多团队在做 BADI_MATN1 时,会把注意力放在转换函数本身。输入一个值,输出一个值,单元测试通过,事务码里显示正常,就认为完成了。但从 External Material Number Persistence 的角度看,转换逻辑只是前半段,后半段是持久化、索引、搜索和跨系统一致性。假设我们的企业有一套物料编码规则,成品以 FG 开头,半成品以 SF 开头,原材料以 RM 开头。历史 ERP 中部分物料是纯数字,新 S/4HANA 项目又希望在 Fiori 中使用更可读的编码。
Android11 已有MANAGE_EXTERNAL_STORAGE 但还是没有WRITE_EXTERNAL_STORAGE权限
Android11 已有MANAGE_EXTERNAL_STORAGE 但还是没有WRITE_EXTERNAL_STORAGE权限 在Android 11中,新增了MANAGE_EXTERNAL_STORAGE权限,用于控制应用对外部存储的管理权限。但是,WRITE_EXTERNAL_STORAGE权限仍然没有被引入,这意...
Android13 SurfaceFlinger启动流程分析
在Android13版本中,SurfaceFlinger是由Android.bp去启动init.rc文件,然后再解析文件去加载SurfaceFlinger。上面方法主要处理如下:1、调用surfaceflinger的createSurfaceFlinger方法,实例化surfaceflinger。2、调用flinger(surfaceflinger)的init()方法,在客户端连接之前进行初始化。
Meshlab中添加external支持库
在写程序时,经常会用到第三方的开源库,来提高工作效率和减少工作量。下面介绍下如何在meshlab中如何添加external支持库,即添加到external工程里,以方便他用。 下面就以添加jsoncpp开源库为实例,做如下描述: 1. 下载jsoncpp,http://jsoncpp.sourceforge.net/, 这里用jsoncpp-0.6.0-rc2 2. 在meshlab/src
【小贪】万字长文介绍因果推断和增益模型
本文首先从一个实例出发阐述了因果性不等于相关性,进而引出因果推断和增益模型。然后简单介绍了因果推断的基础内容,并介绍了主要的三类增益模型:元学习、增益直接建模、表示学习,每一类模型都简要介绍了其经典模型。之后介绍了增益模型的评价指标,包括uplift bins、uplift curve和qini曲线。增益模型实际上是一大类模型框架,本质上可以用传统响应模型或其他机器学习模型嵌入增益模型的框架,但是预测结果并不是一个概率,模型评价方式也有变化。训练样本收集增益模型建模强依赖于ab实验,数据要求很高。
EMGPro 肌肉电手势识别手环传感器
EMG手势识别技术需要进行多方面的工作,包括传感器的设计和布局、EMG信号的采集和预处理、特征提取和分类等。通过对采集到的信号进行特征提取和分类,可以将手势信号与预定义的手势模型进行匹配,从而实现手势识别和控制。通过使用EMG手势识别技术,用户可以更加自由地操纵设备,使得我们的交互方式更加智能和自然。EMG手势识别是利用EMG信号测量肌肉运动的实时性和高精度性,采用机器学习等技术进行数据处理和分析,并将其应用于手势识别领域的一种技术。
PB数据窗口对象之数据源
PB提供5种数据源:QuickSelect(快速选择类型)、SQL Select(SQL选择类型)、Query(查询类型)、External(外部类型)和StoredProcedure(存储过程类型) ---------- Quick Select 只能从一个数据表或者视图中选取数据(无关联的表或者视图)?? ---------- SQL Select 1、选择表 可以一次选择多个表
windows11 远程桌面连接 通过代理连接RDP桌面报错 错误代码0x904 拓展错误代码0x7
打开windows Defender防火墙设置--允许应用通过防火墙更改设置--允许其他应用浏览--进入C:\WINDOWS\system32目录选择mstsc.exe进入C:\Windows\SysWOW64目录h'qmstsc.exe添加后列表里多了一个远程桌面连接,还有一个Remote Desktop Connection,配置网络权限后保存连接成功。
关于External Table
从oracle9i开始,通过External table,可以直接以表格的形式访问外部文件,而不需要事先通过sqlldr将文件load进数据库。oracle9i的external table是通过sqlldr引擎实现的。到了or...
EFR32BG22 Thunderboard开发板 使用SPI 读取加速度计
Simplicity Studio v5 创建Silicon Labs蓝牙SoC EFR32BG22 Thunderboard模块的加速度计工程,模块上有一个ICM-20648 6轴运动跟踪设备,集成3轴加速度计和3轴陀螺仪功能,使用SPI接口跟EFR32BG22芯片连接。 我尽量以图片的形式展示(少打字): 将EFR32BG22的Thunderboard模块通过USB线插入到电脑,打开Simplicity Studio v5软件。 下面看重点: 点击搜索到的IO Stream: USART,点击Ins
新手避坑指南:用Silvaco Atlas搞定GaN HEMT电热仿真的完整流程(附代码解读)
本文详细介绍了使用Silvaco Atlas进行GaN HEMT电热特性仿真的完整流程,特别针对新手常见问题提供避坑指南。从软件环境配置、结构定义、网格划分到物理模型设置,逐步解析关键步骤,并附有代码解读和调试技巧,帮助读者快速掌握GaN器件仿真的核心技术。
JellyBean中的READ_EXTERNAL_STORAGE权限
在JellyBean中,Android添加了一个新的权 限”android.permission.READ_EXTERNAL_STORAGE”,顾名思义该权限说明该程序可以读取设备外部存储空间(内置 SDcard和外置SDCard)的文件,如果您的App已经添加了“WRITE_EXTERNAL...
STM32CubeMX最新版下载安装全攻略(附官网访问问题解决方案)
本文提供了STM32CubeMX最新版的详细下载与安装指南,并针对国内开发者常见的官网访问缓慢、注册验证邮件延迟等问题,给出了实用的解决方案和备选策略。通过清晰的步骤解析,帮助用户快速部署这一强大的STM32图形化配置工具,从而高效启动嵌入式开发项目。
lazarus关于External:SIGSEGV错误来自 datasource
为什么80%的码农都做不了架构师?>>> ...
华为OD机试 C++【TLV解析】
这里的valueOffset指的是value在整串消息里的起始位置(从0开始数)。这表示tag是15(十六进制的0F),length是4,接着的8个字符是value的内容。你收到了一串由两端设备传递的TLV格式的消息,现在你需要根据这串消息生成一个对应的(tag, length, valueOffset)列表。tag是15,对应的数据长度为4,value从第3个字节开始,所以偏移量为2。第二行:一个数字n,表示我们给出的tag的数量(0 < n < 1000)。第一行:一串消息,长度不超过10000。
Outlook Express 6 (OE6) for Win7/Win8/Win10
英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。
关于存储权限WRITE_EXTERNAL_STORAGE和READ_EXTERNAL_STORAGE
WRITE_EXTERNAL_STORAGE:写入权限 READ_EXTERNAL_STORAGE:读取权限 最近申请存储权限时,在纠结是否需要同时申明WRITE_EXTERNAL_STORAGE 和 READ_EXTERNAL_STORAGE?因为6.0以上手机貌似只有一个存储开关,申请一个是不是都打开了呢。但实践证明并不是。。。。。。1、当你的APP只需要读取权限时,仅需申明RE...
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
window.external的使用
我们在js中可以通过window.external.myfunc()来调用浏览器提供的外部方法myfunc。可以让网页内的js脚本中能调用C++代码。 window.external 是外部对象,如你写C# 本地程序放个 webbrowser ,嵌套个网页,this.webBrowser1.ObjectForScripting = this; 就把当前窗口传递给javascript了 比如窗口...
温度PID控制PLC程序
温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值
数学建模模型总结
这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!
Kubernetes NFS Subdir External Provisioner
在传统的 NFS 模式下,PV 通常需要手动创建并指定存储路径,而 NFS Subdir External Provisioner 可以根据 PVC 自动创建子目录并动态分配 PV,简化了运维操作。NFS Subdir External Provisioner 的主要工作是将 PVC 的请求动态映射到 NFS 服务端的子目录。–set nfs.path=/var/nfs/pvc-test:指定 NFS 导出的共享数据目录。它会在 NFS 服务端的指定路径下创建一个与 PVC 关联的子目录。
Android是否需要同时申明WRITE_EXTERNAL_STORAGE 和 READ_EXTERNAL_STORAGE 权限
Android使用过程中,对SD卡存储空间进行读写,那么是否需要同时申明WRITE_EXTERNAL_STORAGE 和 READ_EXTERNAL_STORAGE呢? 实践结论:不一定。 1、当你的APP只需要读取权限时,仅需申明READ_EXTERNAL_STORAGE; 2、当你的APP需要写入权限时,需申明WRITE_EXTERNAL_STORAGE; 需要注意的是: 当申明了W...
window.external,WinForm程序执行JS代码的多种方法以及使用WebBrowser与JS交互
转自:https://blog.youkuaiyun.com/weixin_34041003/article/details/86257585 https://www.cnblogs.com/feiyuhuo/p/5474790.html 我们在js中可以通过window.external.myfunc()来调用浏览器提供的外部方法myfunc。可以让网页内的js脚本中能调用C++代码。 wind...
1509



被折叠的 条评论
为什么被折叠?



