点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
内部表: IT_FINAL
工作区: WA_FINAL
下面的Excel文件
下面的自定义表格
BDC录制过程:SE11--显示表---创建条目---保存。
报告YBDC_PROJECT。 *包含Z声明。 *包括YBDC。 *包括YBUILD_ALV。 类型:Itab的Begin, EMP_CODE类型PERSNO, EMP_NAME键入PAD_CNAME, EMP_JOIN_DATE类型BEGDA, EMP_DEPT类型Y_DEPT, EMP_DESIGNATION类型Y_DESIG, SAL_HRA Type P长度10, SAL_BASIC Type P长度10, SAL_CNV Type P长度10, 总计P型长度15 Itab的结尾。 数据:itab的IT_FINAL类型标准表, WA_FINAL就像IT_FINAL行一样, RAWSTRUCT类型TRUXS_T_TEXT_DATA, IT_FCAT类型SLIS_T_FIELDCAT_ALV, WA_FCAT类似于IT_FCAT行。 SELECTION屏幕-带帧的B1块的开始。 参数:Loc_file类型rlgrap文件名。 选择-屏幕结束B1。 在SELECTION屏幕上loc_file的Value-REQUEST上。 执行上载。 执行转换。 执行创建。 执行ALV。 *&------------------------------------------------ --------------------- * *&表格上传 *&------------------------------------------------ --------------------- * *文字 * ------------------------------------------------- --------------------- * *-> p1文字 * <-p2文字 * ------------------------------------------------- --------------------- * 表格UPLOAD。 调用函数" F4_FILENAME" 出口 PROGRAM_NAME = SYST-CPROG DYNPRO_NUMBER = SYST-DYNNR FIELD_NAME ='' 输入 FILE_NAME = loc_file 。 最终形式。 上载 *&------------------------------------------------ --------------------- * *&表格创建 *&------------------------------------------------ --------------------- * *文字 * ------------------------------------------------- --------------------- * *-> p1文字 * <-p2文字 * ------------------------------------------------- --------------------- * 表单创建。 断点。 在IT_FINAL处循环进入WA_FINAL。 调用函数'YBDC_PROJECT2' 出口 CTU ='X' 模式='N' 更新='L' *组= *用户= *保持= * HOLDDATE = NODATA ='/' TBMA_001 ='X' TBMA_VAL_002 ='YIT_EMP_MASTER' VIMA_VAL_003 ='YIT_EMP_MASTER' EMP_CODE_004 = WA_FINAL-EMP_CODE" 9" EMP_NAME_005 = WA_FINAL-EMP_NAME"'USER TEST 9' EMP_JOIN_DATE_006 = WA_FINAL-EMP_JOIN_DATE" '03 .08.2010' EMP_DEPT_007 = WA_FINAL-EMP_DEPT"'IT DEPARTMENT' EMP_DESIGNATION_008 = WA_FINAL-EMP_DESIGNATION"'TRAINEE' *重要 * SUBRC = *桌子 * MESSTAB = 。 结局。 ENDFORM。 " 创造 *&------------------------------------------------ --------------------- * *&表格转换 *&------------------------------------------------ --------------------- * *文字 * ------------------------------------------------- --------------------- * *-> p1文字 * <-p2文字 * ------------------------------------------------- --------------------- * 表单转换。 调用函数" TEXT_CONVERT_XLS_TO_SAP" 出口 * I_FIELD_SEPERATOR = * I_LINE_HEADER = I_TAB_RAW_DATA = RAWSTRUCT I_FILENAME = LOC_FILE 桌子 I_TAB_CONVERTED_DATA = IT_FINAL 例外情况 CONVERSION_FAILED = 1 其他= 2 。 删除IT_FINAL索引1。 最终形式。 " 兑换 表格ALV。 使用'X''EMP_CODE''雇员代码''1''IT_FINAL''20'''执行BUILD_FCAT。 使用'X''EMP_NAME''雇员名称''2''IT_FINAL''20'''执行BUILD_FCAT。 使用'X''EMP_JOIN_DATE''加入日期''3''IT_FINAL''15'''执行BUILD_FCAT。 使用'X''EMP_DEPT''部门''4''IT_FINAL''15'''执行BUILD_FCAT。 使用'X''EMP_DESIGNATION''名称''5''IT_FINAL''15'''执行BUILD_FCAT。 使用'X''SAL_HRA''房屋租金津贴''6''IT_FINAL''25''X'执行BUILD_FCAT。 使用'X''SAL_BASIC''Basic Salary''7''IT_FINAL''10''X'执行BUILD_FCAT。 使用" X"," SAL_CNV","运输津贴"," 8"," IT_FINAL"," 25"," X"执行BUILD_FCAT。 使用'''TOTAL''Total''9''IT_FINAL''15'''执行BUILD_FCAT。 调用函数" REUSE_ALV_GRID_DISPLAY" 出口 IT_FIELDCAT = IT_FCAT 桌子 T_OUTTAB = IT_FINAL 。 ENDFORM。 使用CHECKBOX的BUILD_FCAT表格 FIELDNAME SELTEXT_M COL_POS 标签名称 输出镜头 编辑。 WA_FCAT-CHECKBOX =复选框。 WA_FCAT-FIELDNAME = FIELDNAME。 WA_FCAT-SELTEXT_M = SELTEXT_M。 WA_FCAT-COL_POS = COL_POS。 WA_FCAT-TABNAME = TABNAME。 WA_FCAT-outputlen = outputlen。 WA_FCAT-edit =编辑。 将WA_FCAT追加到IT_FCAT。 清除WA_FCAT。 最终形式。 " BUILD_FCAT
(6.0 kB)
您好Shashank
*文件中的日期格式错误。
*如果文件有标题行,则应放置代码。
FM TEXT_CONVERT_XLS_TO_SAP的I_LINE_HEADER ='X'
*请勿对所有字段使用此代码" WA_FCAT-CHECKBOX = CHECKBOX。
如果要在ALV中使用复选框,则您的字段应为1个字符的长度。
喜欢:标记类型c
最好的问候
*包含Z声明。
*包含YBDC。
*包含YBUILD_ALV。
类型:Itab的开头,
EMP_CODE类型PERSNO,
EMP_NAME类型PAD_CNAME,
EMP_JOIN_DATE类型BEGDA,
EMP_DEPT类型char20,
EMP_DESIGNATION类型char20,
SAL_HRA类型P长度10,
SAL_BASIC类型P长度10,
SAL_CNV类型P长度10,
TOTAL类型 P长度15,
Itab的结尾。
数据:Itab的标准表,
WA_FINAL,如IT_FINAL行,
RAWSTRUCT类型,TRUXS_T_TEXT_DATA,
IT_FCAT类型,SLIS_T_FIELDCAT_ALV,
WA_FCAT 类似于IT_FCAT的行。
SELECTION-屏幕B1带有帧的开始。
参数:Loc_file类型rlgrap-文件名。
SELECTION-屏幕B1块的结尾。
在SELECTION屏幕上-值- 请求loc_file。
执行UPLOAD。
执行转换。
执行创建。
执行ALV。
*&----------------- -------------------------------------------------- -*
*&表单上传
*&----------------------------------- ------------------ ---------------- *
*文字
* ------------------------ ---------------------------------------------- *
*-> p1文本
* <-p2文本
* ------------------------------- --------------------------------------- *
上载表格。
致电 函数'F4_FILENAME'
导出
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME =''
导入
FILE_NAME = loc_file
。
终端格式。 "上传
*&------------------------------------------- -------------------------- *
*&表格CREATE
*&----------- -------------------------------------------------- -------- *
*文字
* -------------------------------- -------------------------------------- *
*-> p1文字
* <-p2文字
* --------------------------------------- ------------------------------- *
表单创建。
断点。
*循环 在IT_FINAL处进入WA_FINAL。
*调用函数'YBDC_PROJECT2'
*导出
* CTU ='X'
*模式='N'
*更新='L'
* *组=
**用户=
**保持=
**保留日期=
* NODATA ='/'
* TBMA_001 ='X'
* TBMA_VAL_002 ='YIT_EMP_MASTER '
* VIMA_VAL_003 ='YIT_EMP_MASTER'
* EMP_CODE_004 = WA_FINAL-EMP_CODE"'9'
* EMP_NAME_005 = WA_FINAL-EMP_NAME"'用户测试9'
* EMP_JOIN_DATE_006 = WA_FINAL-EMP_ATE '03。 .2010'
* EMP_DEPT_007 = WA_FINAL-EMP_DEPT"'IT DEPARTMENT'
* EMP_DESIGNATION_008 = WA_FINAL-EMP_DESIG 国家"'TRAINEE'
**导入
** SUBRC =
**桌子
** MESSTAB =
*。
* ENDLOOP。
ENDFORM。 "创建
*&------------------------------------------- -------------------------- *
*&表格CONVERT
*&----------- -------------------------------------------------- -------- *
*文字
* -------------------------------- -------------------------------------- *
*-> p1文字
* <-p2文字
* --------------------------------------- ------------------------------- **
表单转换。
调用函数'TEXT_CONVERT_XLS_TO_SAP'
导出
* I_FIELD_SEPERATOR =
I_LINE_HEADER ='X'
I_TAB_RAW_DATA = RAWSTRUCT
I_FILENAME = LOC_FILE
表
I_TAB_CONVERTED_DATA = IT_FINAL
异常
CONVERSION_FAILED = 1 = 2
。
最终形式。" CONVERT
形式ALV。
使用'X''EMP_CODE''Employee Code''1''IT_FINAL''20'来执行BUILD_FCAT"。
使用'X''EMP_NAME''雇员姓名''2''IT_FINAL''20'''执行BUILD_FCAT。
使用'X''EMP_JOIN_DATE''加入日期''3''IT_FINAL''15'执行BUILD_FCAT ''。
使用'执行BUILD_FCAT X''EMP_DEPT''部门''4''IT_FINAL''15'''。
使用'X''EMP_DESIGNATION''名称''5''IT_FINAL''15'''执行BUILD_FCAT。
使用'X''SAL_HRA''房屋租金津贴''6''IT_FINAL''25''X'执行BUILD_FCAT。
使用'X''SAL_BASIC''基本工资''7''IT_FINAL'' 10''X'。
使用'X''SAL_CNV''输送津贴''8''IT_FINAL''25''X'执行BUILD_FCAT。
使用''TOTAL''Total''执行BUILD_FCAT 9''IT_FINAL''15'''。
调用函数'REUSE_ALV_GRID_DISPLAY'
导出
IT_FIELDCAT = IT_FCAT
表
T_OUTTAB = IT_FINAL
。
ENDFORM。 >使用CHECKBOX
SELTEXT_M
COL_POS
TABNAME
outputlen
编辑。
" WA_FCAT-CHECKBOX = CHECKBOX。
WA_FCAT-FIELDNAME = FIELDNAME。< br> WA_FCAT-SELTEXT_M = SELTEXT_M。
WA_FCAT-COL_POS = COL_POS。
WA_FCAT-TABNAME = TABNAME。
WA_FCAT-outputlen = outputlen。
WA_FCAT-edit =编辑。
将WA_FCAT附加到 IT_FCAT。
清除WA_FC AT。
最终形式。 " BUILD_FCAT
SHASHANK SENGAR -参见此处: https://answers.sap.com/articles/12732916/a-definition -of-professional-i-wasnt-previously-aw.html
对不起。
所以,
首先,
马修·比林汉姆(Matthew Billingham)我只想说我没有报告任何评论,只是想让你扩大要点,我对你的答复表示满意。
敬请帮助我。
如果您想学习BDC,建议您尝试使用与SE11/SE16不同的事务。
我认为到目前为止提供的信息是有帮助的,我没什么可补充的。
我认为评论您的回答以帮助OP至关重要。 我不确定OP是否仅通过阅读代码就能理解问题所在,为什么像以前那样更改代码以及为什么应该解决问题。
一周热门 更多>