当前位置: 首页 > wzjs >正文

景安怎么把网站做别名新闻今天最新消息

景安怎么把网站做别名,新闻今天最新消息,前端开发模板,阿里云国际wordpress日常取数的时候可能会存在动态SQL的问题,比如取数动态或者条件动态等情况,下面针对动态SQL做一个完整的处理。包括SELECT 、FROM、WHERE 以及 最后table的动态。 首先 数据定义,这里全按照表来append处理 TYPES:BEGIN OF ty_data,edpline T…

日常取数的时候可能会存在动态SQL的问题,比如取数动态或者条件动态等情况,下面针对动态SQL做一个完整的处理。包括SELECT 、FROM、WHERE 以及 最后table的动态。

首先 数据定义,这里全按照表来append处理

TYPES:BEGIN OF ty_data,edpline TYPE edpline,END OF ty_data.DATA:lt_select TYPE TABLE OF ty_data,ls_select TYPE ty_data,lt_from   TYPE TABLE OF ty_data,ls_from   TYPE ty_data,lt_where  TYPE TABLE OF ty_data,ls_where  TYPE ty_data.

动态SELECT 处理


CLEAR:ls_select.REFRESH:lt_select.ls_select-edpline = 'mara~matnr,'.
APPEND ls_select TO lt_select.CLEAR:ls_select.ls_select-edpline = 'makt~maktx,'.
APPEND ls_select TO lt_select.CLEAR:ls_select.ASSIGN lt_select[ lines( lt_select ) ] TO FIELD-SYMBOL(<comp>).
REPLACE ',' IN <comp> WITH ''.

动态表关联


CLEAR:ls_from.REFRESH:lt_from.ls_from-edpline = 'MARA'.
APPEND ls_from TO lt_from.CLEAR:ls_from.
ls_from-edpline = 'INNER JOIN MAKT'.
APPEND ls_from TO lt_from.CLEAR:ls_from.
ls_from-edpline = 'ON MARA~MATNR = MAKT~MATNR'.
APPEND ls_from TO lt_from.CLEAR:ls_from.

动态where 条件


CLEAR:ls_where.REFRESH:lt_where.ls_where = 'MAKT~SPRAS = @SY-LANGU'.
APPEND ls_where TO lt_where.CLEAR:ls_where.ls_where = 'AND MARA~MTART = `Z120`'.
APPEND ls_where TO lt_where.CLEAR:ls_where.

搭建动态表


***构建动态表DATA:gt_fieldcat TYPE lvc_t_fcat,gs_fieldcat TYPE lvc_s_fcat.DATA: dy_table TYPE REF TO data,dy_line  TYPE REF TO data.
FIELD-SYMBOLS: <dyn_table> TYPE STANDARD TABLE,<dyn_wa>.DEFINE fill_field.CLEAR gs_fieldcat.gs_fieldcat-fieldname     = &1.gs_fieldcat-coltext       = &2.gs_fieldcat-ref_table     = &3.gs_fieldcat-ref_field     = &4.gs_fieldcat-scrtext_l = gs_fieldcat-scrtext_m = gs_fieldcat-scrtext_s = gs_fieldcat-reptext = gs_fieldcat-coltext.APPEND gs_fieldcat TO gt_fieldcat.
END-OF-DEFINITION.fill_field 'MATNR' '物料号' 'MARA' 'MATNR'.
fill_field 'MAKTX' '物料描述' 'MAKT' 'MAKTX'.* 根据it_fact生成动态表
CALL METHOD cl_alv_table_create=>create_dynamic_tableEXPORTINGit_fieldcatalog = gt_fieldcat[]IMPORTINGep_table        = dy_table.ASSIGN dy_table->* TO <dyn_table>.CREATE DATA dy_line LIKE LINE OF <dyn_table>.ASSIGN dy_line->* TO <dyn_wa>.

SQL 以及展示


SELECT (lt_select)FROM (lt_from)INTO TABLE @<dyn_table>WHERE (lt_where).LOOP AT <dyn_table> ASSIGNING <dyn_wa>.ASSIGN COMPONENT 'MATNR' OF STRUCTURE <dyn_wa> TO FIELD-SYMBOL(<fv_matnr>).ASSIGN COMPONENT 'MAKTX' OF STRUCTURE <dyn_wa> TO FIELD-SYMBOL(<fv_maktx>).WRITE:/ <fv_matnr>,<fv_maktx>.ENDLOOP.

完整代码

TYPES:BEGIN OF ty_data,edpline TYPE edpline,END OF ty_data.DATA:lt_select TYPE TABLE OF ty_data,ls_select TYPE ty_data,lt_from   TYPE TABLE OF ty_data,ls_from   TYPE ty_data,lt_where  TYPE TABLE OF ty_data,ls_where  TYPE ty_data.TYPES:BEGIN OF gy_matnr,matnr TYPE mara-matnr,maktx TYPE makt-maktx,END OF gy_matnr.
DATA:gs_matnr TYPE gy_matnr,gt_matnr TYPE TABLE OF gy_matnr.DATA:ls_data TYPE REF TO data.
FIELD-SYMBOLS:<ft_data> TYPE ANY TABLE.CLEAR:ls_select.REFRESH:lt_select.ls_select-edpline = 'mara~matnr,'.
APPEND ls_select TO lt_select.CLEAR:ls_select.ls_select-edpline = 'makt~maktx,'.
APPEND ls_select TO lt_select.CLEAR:ls_select.ASSIGN lt_select[ lines( lt_select ) ] TO FIELD-SYMBOL(<comp>).
REPLACE ',' IN <comp> WITH ''.CLEAR:ls_from.REFRESH:lt_from.ls_from-edpline = 'MARA'.
APPEND ls_from TO lt_from.CLEAR:ls_from.
ls_from-edpline = 'INNER JOIN MAKT'.
APPEND ls_from TO lt_from.CLEAR:ls_from.
ls_from-edpline = 'ON MARA~MATNR = MAKT~MATNR'.
APPEND ls_from TO lt_from.CLEAR:ls_from.CLEAR:ls_where.REFRESH:lt_where.ls_where = 'MAKT~SPRAS = @SY-LANGU'.
APPEND ls_where TO lt_where.CLEAR:ls_where.ls_where = 'AND MARA~MTART = `Z120`'.
APPEND ls_where TO lt_where.CLEAR:ls_where.***构建动态表DATA:gt_fieldcat TYPE lvc_t_fcat,gs_fieldcat TYPE lvc_s_fcat.DATA: dy_table TYPE REF TO data,dy_line  TYPE REF TO data.
FIELD-SYMBOLS: <dyn_table> TYPE STANDARD TABLE,<dyn_wa>.DEFINE fill_field.CLEAR gs_fieldcat.gs_fieldcat-fieldname     = &1.gs_fieldcat-coltext       = &2.gs_fieldcat-ref_table     = &3.gs_fieldcat-ref_field     = &4.gs_fieldcat-scrtext_l = gs_fieldcat-scrtext_m = gs_fieldcat-scrtext_s = gs_fieldcat-reptext = gs_fieldcat-coltext.APPEND gs_fieldcat TO gt_fieldcat.
END-OF-DEFINITION.fill_field 'MATNR' '物料号' 'MARA' 'MATNR'.
fill_field 'MAKTX' '物料描述' 'MAKT' 'MAKTX'.* 根据it_fact生成动态表
CALL METHOD cl_alv_table_create=>create_dynamic_tableEXPORTINGit_fieldcatalog = gt_fieldcat[]IMPORTINGep_table        = dy_table.ASSIGN dy_table->* TO <dyn_table>.CREATE DATA dy_line LIKE LINE OF <dyn_table>.ASSIGN dy_line->* TO <dyn_wa>.SELECT (lt_select)FROM (lt_from)INTO TABLE @<dyn_table>WHERE (lt_where).LOOP AT <dyn_table> ASSIGNING <dyn_wa>.ASSIGN COMPONENT 'MATNR' OF STRUCTURE <dyn_wa> TO FIELD-SYMBOL(<fv_matnr>).ASSIGN COMPONENT 'MAKTX' OF STRUCTURE <dyn_wa> TO FIELD-SYMBOL(<fv_maktx>).WRITE:/ <fv_matnr>,<fv_maktx>.ENDLOOP.BREAK-POINT.

这里只是一个简单的代码,但是由简到难道理都一样,看具体需求去做具体的处理。
简单跑一下代码实现结果
在这里插入图片描述

http://www.dtcms.com/wzjs/389271.html

相关文章:

  • 烟台网站建设首推企汇互联见效付款沈阳关键词seo
  • 网站建设用苹果电脑360外链
  • 做网站彩票代理多少钱啊磁力天堂最佳搜索引擎入口
  • 兴平市住房和城乡建设局门户网站新冠疫情最新情况最新消息
  • 南昌网站建设和推广关于进一步优化落实疫情防控措施
  • 做网站送给女友意义营销策划与运营方案
  • 永久域名网站网站seo优化技能
  • 做外贸 网站没有邮箱怎么找b站大全永不收费2023入口在哪
  • 不属于网站后期维护青岛seo优化公司
  • 食品网站开发by72777最新域名查询
  • 单页网站制作教程营销策略手段有哪些
  • 下载flash网站网站seo推广营销
  • 镇江做网站的淘宝关键词搜索工具
  • 零基础自学python上海搜索引擎优化seo
  • 马蜂窝旅游网站怎么做股票发行ipo和seo是什么意思
  • qt做网站服务器引流推广广告怎么写
  • 男女做爰视频网站在线视频优化关键词排名seo软件
  • 佛山网站建设有限公司个人怎么在百度上做推广
  • 网站页面模板 建设中指数基金是什么意思
  • 做网站记者的出路是什么网页关键词排名优化
  • 建站行业发展趋势百度查重
  • 做网站的工作好吗长沙seo排名公司
  • 上海徐汇区网站建设网站标题优化排名
  • 怎么仿网站如何申请网站域名流程
  • 网站站长统计代码托管竞价推广公司
  • 徐州网站建设制作工作室游戏推广平台代理
  • 西安做网站公司哪家好百度提问首页
  • 内涵 网站 源码360搜索首页
  • 广州h5网站制作万网建站
  • 品牌建设的五个阶段关键词优化快速