UI 增加文本
1.直接在节点上增加VALUE NODE。
2.写GET,SET,I,P的相关实现
method GET_ZH12.
DATA: lr_current TYPE REF TO if_bol_bo_property_access,
lr_coll TYPE REF TO if_bol_entity_col,
lr_iter TYPE REF TO if_bol_bo_col_iterator,
ls_text TYPE crmst_text_btil,
ls_admin_h TYPE crmst_adminh_btil,
lr_texth TYPE REF TO cl_crm_bol_entity,
lr_text TYPE REF TO cl_crm_bol_entity,
lr_entity TYPE REF TO cl_crm_bol_entity.
*************************************************************************************************** IF iterator IS BOUND.
lr_current = iterator->get_current( ).
ELSE.
lr_current = collection_wrapper->get_current( ).
ENDIF. CALL METHOD lr_current->get_properties
IMPORTING
es_attributes = ls_admin_h. TRY.
lr_entity ?= lr_current.
lr_coll = lr_entity->get_related_entities( iv_relation_name = 'BTHeaderTextSet' ). "#EC NOTEXT
lr_current = lr_coll->get_current( ).
CHECK lr_current IS BOUND. lr_texth ?= lr_current.
lr_coll = lr_texth->get_related_entities( iv_relation_name = 'BTTextHAll' ). "#EC NOTEXT IF lr_coll IS NOT BOUND OR lr_coll->size( ) = . ELSE.
IF lr_coll->size( ) > .
lr_iter = lr_coll->if_bol_bo_col~get_iterator( ).
IF lr_iter IS BOUND.
lr_text ?= lr_iter->find_by_property( EXPORTING iv_attr_name = 'TDID' iv_value = 'ZH12' ).
ENDIF.
ENDIF.
ENDIF. IF lr_text IS BOUND.
TRY.
lr_text->get_property_as_value( EXPORTING iv_attr_name = 'CONC_LINES'
IMPORTING ev_result = value ). "#EC NOTEXT
CATCH cx_crm_cic_parameter_error.
ENDTRY.
ELSE.
IF lr_texth->is_changeable( ) = abap_true.
TRY.
lr_text = lr_texth->create_related_entity( iv_relation_name = 'BTTextHAll' ).
CALL METHOD lr_text->if_bol_bo_property_access~get_properties
IMPORTING
es_attributes = ls_text. ls_text-tdobject = 'CRM_ORDERH' .
ls_text-tdname = ls_admin_h-guid .
ls_text-tdid = 'ZH12'.
ls_text-tdspras = 'E' . CALL METHOD lr_text->if_bol_bo_property_access~set_properties
EXPORTING
is_attributes = ls_text. lr_text->deactivate_sending( ).
CATCH cx_crm_genil_model_error cx_crm_genil_duplicate_rel.
RETURN.
ENDTRY.
ENDIF.
ENDIF. CATCH cx_sy_ref_is_initial cx_sy_move_cast_error
cx_crm_genil_model_error.
RETURN.
ENDTRY. endmethod.
method SET_ZH12.
DATA: lr_current TYPE REF TO if_bol_bo_property_access,
lr_texth TYPE REF TO cl_crm_bol_entity,
lr_text TYPE REF TO cl_crm_bol_entity,
lr_dref TYPE REF TO data,
lr_copy TYPE REF TO data,
lr_iter TYPE REF TO if_bol_bo_col_iterator,
ls_text TYPE crmst_text_btil,
ls_admin_h TYPE crmst_adminh_btil,
lr_coll TYPE REF TO if_bol_entity_col,
lr_entity TYPE REF TO cl_crm_bol_entity.
DATA:ls_crmst_adminh_btil TYPE crmst_adminh_btil,
ls_crmt_orgman_wrk TYPE crmt_orgman_wrk. FIELD-SYMBOLS: <nval> TYPE any,
<oval> TYPE any.
*************************************************************************************************** IF iterator IS BOUND.
lr_current = iterator->get_current( ).
ELSE.
lr_current = collection_wrapper->get_current( ).
ENDIF. CALL METHOD lr_current->get_properties
IMPORTING
es_attributes = ls_admin_h. TRY.
lr_entity ?= lr_current.
lr_coll = lr_entity->get_related_entities( iv_relation_name = 'BTHeaderTextSet' ). "#EC NOTEXT
lr_current = lr_coll->get_current( ).
CHECK lr_current IS BOUND. lr_texth ?= lr_current.
lr_coll = lr_texth->get_related_entities( iv_relation_name = 'BTTextHAll' ). "#EC NOTEXT
IF lr_coll->size( ) > .
lr_iter = lr_coll->if_bol_bo_col~get_iterator( ).
IF lr_iter IS BOUND.
lr_text ?= lr_iter->find_by_property( EXPORTING iv_attr_name = 'TDID' iv_value = 'ZH12' ).
ENDIF.
ENDIF.
***********************************add by dq-yuw
IF lr_text IS NOT BOUND. IF lr_texth->is_changeable( ) = abap_true.
TRY.
lr_text = lr_texth->create_related_entity( iv_relation_name = 'BTTextHAll' ).
CALL METHOD lr_text->if_bol_bo_property_access~get_properties
IMPORTING
es_attributes = ls_text. ls_text-tdobject = 'CRM_ORDERH' .
ls_text-tdname = ls_admin_h-guid .
ls_text-tdid = 'ZH12'.
ls_text-tdspras = 'E' . CALL METHOD lr_text->if_bol_bo_property_access~set_properties
EXPORTING
is_attributes = ls_text. lr_text->deactivate_sending( ).
CATCH cx_crm_genil_model_error cx_crm_genil_duplicate_rel.
RETURN.
ENDTRY.
ENDIF. ENDIF.
************************************************************** TRY.
lr_dref = lr_text->get_property( 'CONC_LINES' ). "#EC NOTEXT
CATCH cx_crm_cic_parameter_error.
RETURN.
ENDTRY. CATCH cx_sy_ref_is_initial cx_sy_move_cast_error
cx_crm_genil_model_error.
RETURN.
ENDTRY.
CHECK lr_dref IS BOUND. ASSIGN lr_dref->* TO <oval>.
CREATE DATA lr_copy LIKE <oval>.
ASSIGN lr_copy->* TO <nval>. TRY.
CALL METHOD if_bsp_model_util~convert_from_string
EXPORTING
data_ref = lr_copy
value = value.
CATCH cx_sy_conversion_error.
RAISE EXCEPTION TYPE cx_bsp_conv_failed
EXPORTING
name = 'TEXT'. "#EC NOTEXT
ENDTRY. IF <nval> NE <oval>.
lr_text->set_property( iv_attr_name = 'CONC_LINES' "#EC NOTEXT
iv_value = <nval> ).
ENDIF. endmethod.
METHOD GET_P_ZH12. CASE IV_PROPERTY.
WHEN IF_BSP_WD_MODEL_SETTER_GETTER=>FP_FIELDTYPE.
RV_VALUE = CL_BSP_DLC_VIEW_DESCRIPTOR=>FIELD_TYPE_TEXTAREA.
WHEN IF_BSP_WD_MODEL_SETTER_GETTER=>FP_TEXTAREA_ROWS.
RV_VALUE = .
ENDCASE. ENDMETHOD.
UI 增加文本的更多相关文章
- 文字如何实现完美UI?文本排版设计告诉你
一部手机,电量充足,网络通畅,就足以让我们打发一天的时光,尽情沉浸在手机时代的缤纷世界里.这个信息资源无穷尽的手机网络世界,是设计师和开发者们在不停的探索中一路一步精心打造.如何进一步美化这个世界,优 ...
- js实现点击增加文本输入框
html代码: <ul id="ulid21" > <li id="li11" >问卷选项设置:</li> </ul& ...
- IOS开发UI基础文本属性Attributes
文本属性Attributes 1.NSKernAttributeName: @10 调整字句 kerning 字句调整 2.NSFontAttributeName : [UIFont systemFo ...
- redmine增加文本输入框默认格式
需求:击一个按钮,在文本输入区域自动生成如下图的内容: 1. 详细描述: 2. 详细步骤: 3. 期望结果: 4. 实际结果: 实现过程: 1 打开文件\apps\redmine\public\jav ...
- JTextArea利用JScrollpane增加文本域滚轮(滚动条)
JTextArea加滚轮的几种方法 JTextArea txaDisplay = new JTextArea(); JScrollPane scroll = new JScrollPane(txaDi ...
- UI设计文本框解决Placeholder的在IE10 以下 IE 9 IE8 IE 7 的兼容问题
创建JS文件 placeholderfriend.js (function($) { /** * 牛叉的解决方案 */ var placeholderfriend = { focus: functio ...
- C# 多线程详解 Part.02(UI 线程和子线程的互动、ProgressBar 的异步调用)
我们先来看一段运行时会抛出 InvalidOperationException 异常的代码段: private void btnThreadA_Click(object sender, ...
- 【Unity】UGUI聊天消息气泡 随文本内容自适应
游戏中需要用做UGUI做聊天界面.其中聊天气泡ChatItem的UI要求能随着聊天内容文本的长度自适应的. 网上搜了一下聊天气泡的UI,发现都不太符合咱的需求,具体来说是文本宽度不足一行时,文本宽度自 ...
- NopCommerce 增加 Customer Field
预期效果: Customer表新增一个Column 该新增字段可以在Admin段 新增 修改 列表查询及显示 示例步骤: 0.数据库表修改 alter table [Customer] add Mem ...
随机推荐
- Java学习之路-Hessian学习
Hessian是基于HTTP的轻量级远程服务解决方案,Hessian像Rmi一样,使用二进制消息进行客户端和服务器端交互.但与其他二进制远程调用技术(例如Rmi)不同的是,它的二进制消息可以移植其他非 ...
- [转]有return的情况下try catch finally的执行顺序
结论: 1.不管有没有出现异常,finally块中代码都会执行: 2.当try和catch中有return时,finally仍然会执行: 3.finally是在return后面的表达式运算后执行的(此 ...
- PHP----------用curl方式请求接口在同一个项目里面的时候不能请求的情况
1.环境是wnmp 2.NGINX中,看PHP文件块fastcig-pass的设置值(127.0.0.1:9000).设置都是以keepalive方式请求,接收到PHP文件时,交于后端过程PHPCGI ...
- [MacOS] Genymotion***下载模拟器方法
其它就不说了,我用的是某个工具. 将以下地址加入到白名单 https://cloud.genymotion.com http://dl.genymotion.com
- Linux中安装Python2.7
原文地址:http://www.jianshu.com/p/6425d18d3e47 安装依赖的库 yum -y install python-devel openssl openssl-deve ...
- 在CI (Jenkins) 从机(服务器)上使用bat批处理执行自动构建任务时,输出NuGet还原失败的解决方案
编译环境:Jenkins+MSBuilds 1.搜索本次构建的解决方案中的所有csproj后缀文件,打开后找到这一段代码,并且删除掉.如果没有,直接忽略跳过. <Import Project=& ...
- 【BCFTOOLS】按样本拆分VCF文件
在对vcf的操作有这样三个软件: Vcftools:主要用于群体分析,文本处理的功能不是很强大,虽然这个软件也可以拆分样本,但是这种拆分不涉及文件的处理,只是保留在分析流程里. GATK .x:这个软 ...
- ACM总结——2017ACM-ICPC北京赛区现场赛总结
现在距离比赛结束已经过了一个多星期了,也是终于有时间写下心得了.回来就是被压着做项目,也是够够的. 这次比赛一样是我和两个学弟(虽然是学弟,但我的实力才是最弱的T_T)一起参加的,成绩的话打铁,算是情 ...
- opencv学习之路(23)、轮廓查找与绘制(二)——访问轮廓每个点
一.简介 二.画出每个轮廓的每个点 #include "opencv2/opencv.hpp" using namespace cv; void main() { Mat src= ...
- --save 与--save-dev的区别
一.模式 运行webpack命令时,一定要指定模式. webpack --mode developmentwebpack --mode production二.--save -dev --save:将 ...