1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
BAPI_ORGUNITEXT_DATA_GET 测试案例: PLVAR OTYPE O OBJID 50010000 KEYDATE 2017.01.20 SCENARIO MDT1 EVALPATH EVALDEPTH 0 <hr /> BAPI_EMPLOYEE_GETDATA 传入工号即可 <hr /> "获取顶层节点下所有组织结构 PARAMETERS p_objid TYPE hrobjid OBLIGATORY MATCHCODE OBJECT plom. PARAMETERS p_date LIKE sy-datum OBLIGATORY DEFAULT sy-datum. DATA: lt_objec TYPE TABLE OF objec, lt_objec_link TYPE TABLE OF struc. CALL FUNCTION 'RH_STRUC_GET' EXPORTING act_otype = 'O' act_objid = p_objid act_wegid = 'O-O-S' act_plvar = '01' act_begda = p_date act_endda = p_date TABLES result_objec = lt_objec result_struc = lt_objec_link EXCEPTIONS no_plvar_found = 1 no_entry_found = 2 OTHERS = 3. SORT lt_objec BY objid. SORT lt_objec_link BY objid. |
SAP HR模块其他常用函数:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 |
-------------------------------------------------- 获取每个月的最后一天 --------------------------------------------------- CALL FUNCTION 'LAST_DAY_OF_MONTHS' EXPORTING day_in = date IMPORTING last_day_of_month = date1. ------------------------------------------------------- -------------------------------------------------------------- 去掉前面0 *&--------------------------------------------------------------------* *& Form frm_alpha_output 去零 *&--------------------------------------------------------------------* DEFINE alpha_minus. call function 'CONVERSION_EXIT_ALPHA_OUTPUT' exporting input = &1 importing output = &1. END-OF-DEFINITION. --------------------------------------------------- 前面加0 --------------------------------------------------- call function 'CONVERSION_EXIT_ALPHA_INPUT' exporting input = &1 importing output = &1. ------------------------------------------------ 踢用户 TH_DELETE_USER --------------------------------------- CALL FUNCTION 'CUT_2BYTES_STRINGS' EXPORTING I_STR = T_STR I_LEN = 4 IMPORTING O_STR = T_TXT04 T_STR 输入字符 I_LEN 长度 T_TXT04输出字符 金额转换成大写 CALL FUNCTION 'SPELL_AMOUNT' EXPORTING AMOUNT = T_AMOUNT10 CURRENCY = 'RMB' LANGUAGE = '1' IMPORTING IN_WORDS = S_AMWORD2 EXCEPTIONS NOT_FOUND = 1 TOO_LARGE = 2 OTHERS = 3. 把SAP里的负号放到前面来的函数 CLOI_PUT_SIGN_IN_FRONT 使用示例 DATA : t(10) TYPE c VALUE '65465-' . CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT' CHANGING value = t. write : t . ------------------------------------------- 通过这个日期得出那天是星期几 DAY_IN_WEEK ---------------------------------------- 用来得到将来/过去的日期的 RP_CALC_DATE_IN_INTERVAL ------------------------------------------- 日期的加减 BKK_ADD_MONTH_TO_DATE -------------------------------------------------------------------- 一组有用的用户交互窗口函数 POPUP_TO_CONFIRM_LOSS_OF_DATA 显示有YES/NO的弹出窗口,提示用户未保存的数据将丢失 POPUP_TO_CONFIRM_STEP 提示是否确认操作的弹出窗口 POPUP_TO_CONFIRM_WITH_MESSAGE 可以显示定制的提示信息的确认窗口 POPUP_TO_CONFIRM_WITH_VALUE 显示确认用户对某个特定对象的操作的弹出窗口 POPUP_TO_DECIDE 将待确认选项以单选按钮的方式显示的弹出窗口 POPUP_TO_DECIDE_WITH_MESSAGE 带消息的确认窗口 POPUP_TO_DISPLAY_TEXT 显示多行信息的窗口 POPUP_TO_SELECT_MONTH 月份选择窗口 POPUP_WITH_TABLE_DISPLAY 有表格对象的确认窗口 一组操纵客户端文件系统的函数 GUI_CREATE_DIRECTORY 在PC上建立文件目录 GUI_DELETE_FILE 删除PC上的文件 GUI_DOWNLOAD 文件下载函数 GUI_EXEC 执行PC上的程序,或者打开文件 GUI_GET_DESKTOP_INFO 得到PC客户端的系统信息,比如操作系统等 GUI_REMOVE_DIRECTORY 删除PC目录 GUI_RUN 运行PC程序(ShellExecute) GUI_UPLOAD 从PC上传程序 判断某天是否是假日 HOLIDAY_CHECK_AND_GET_INFO ABAP_DOCU_DOWNLOAD Download ABAP documentation in HTML format. GET_CURRENT_YEAR 得到当前的财政年(fiscal year) 察看某日期的属性,包括该日期是星期几,第几天(周2=2),是不是公共假期等,需要输入国家日历。 DAY_ATTRIBUTES_GET Return useful information about a day. Will tell you the day of the week as a word (Tuesday), the day of the week (2 would be Tuedsay), whether the day is a holiday, and more.(provided by Francois Henrotte)? CLPB_IMPORT :从剪贴板导入internal table CLPB_EXPORT:从internal table输入到剪贴板 示例程序:GRCLPB_1 在SE38环境下的程序名输入栏输入'DEMO*'后按F4,你可以查到SAP所有的DEMO示例程序,会学到很多ABAP功能的实现方法,输入'BCALV*'后按F4,你可以查到很多ALV示例程序 2008.05.19 ------------------------------------------------------------------- 读取组织结构 ------------------------------------------------------------------- CALL FUNCTION 'RH_STRUC_GET' EXPORTING act_otype = 'O' act_objid = p_orgeh “单位 act_wegid = 'O-O_DOWN' ” 评估路径 act_plvar = '01' “版本 act_begda = sy-datum act_endda = sy-datum TABLES result_objec = tab_org1 ” 返回结果 EXCEPTIONS no_plvar_found = 1 no_entry_found = 2 OTHERS = 3. -------------------------------------------------------------------- ------------------------------------------------------------------------------ 读取 pc261 簇目录 (工资发放结果的输入和输出) ------------------------------------------------------------------------------ * DATA:tab_in_rgdir LIKE pc261 OCCURS 0 WITH HEADER LINE. CALL FUNCTION 'CU_READ_RGDIR' EXPORTING persnr = pernr-pernr * BUFFER = * NO_AUTHORITY_CHECK = ' ' * IMPORTING * MOLGA = TABLES in_rgdir = tab_in_rgdir "pc261结果表 EXCEPTIONS no_record_found = 1 OTHERS = 2. -------------------------------------------------------------------------------- 读取payroll -------------------------------------------------------------------------------- * DATA:l_py_result TYPE paycn_result, * l_seqnr type pc261-seqnr . CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT' EXPORTING * clusterid = employeenumber = p0002-pernr sequencenumber = l_seqnr * READ_ONLY_BUFFER = ' ' * READ_ONLY_INTERNATIONAL = ' ' * ARC_GROUP = ' ' check_read_authority = 'X' * FILTER_CUMULATIONS = 'X' * CLIENT = * IMPORTING * VERSION_NUMBER_PAYVN = * VERSION_NUMBER_PCL2 = CHANGING payroll_result = l_py_result EXCEPTIONS illegal_isocode_or_clusterid = 1 error_generating_import = 2 import_mismatch_error = 3 subpool_dir_full = 4 no_read_authority = 5 no_record_found = 6 versions_do_not_match = 7 error_reading_archive = 8 error_reading_relid = 9 OTHERS = 10. ---------------------------------------------------------------------------------- 从HRP里取出数据到内表的方法 ---------------------------------------------------------------------------------- CALL FUNCTION 'RH_READ_INFTY_NNNN' EXPORTING PLVAR = '01' OTYPE = 'O' OBJID = OBJID INFTY = '9774' SUBTY = '0002' begda = G_BEGDA endda = G_ENDDA TABLES INNNN = TAB9774 EXCEPTIONS NOTHING_FOUND = 1 WRONG_CONDITION = 2 INFOTYP_NOT_SUPPORTED = 3 WRONG_PARAMETERS = 4 OTHERS = 5. ------------------------------------------------------------------------ 从HRT里取出数据到内表的方法 ------------------------------------------------------------------------ CALL FUNCTION 'RH_READ_INFTY_TABDATA' EXPORTING infty = '9773' * DBMODE = ' ' * RETURN_INITIAL = 'X' TABLES innnn = i9773 hrtnnnn = i_hrt9773 EXCEPTIONS no_table_infty = 1 innnn_empty = 2 nothing_found = 3 OTHERS = 4 . IF sy-subrc <> 0. LOOP AT i9773 WHERE istat = '1'. CALL FUNCTION 'RH_GET_TABDATA_FROM_ITAB' EXPORTING tabnr = i9773-tabnr TABLES hrtnnnn = i_hrt9773 ptnnnn = i_ht_pt9773 EXCEPTIONS nothing_found = 01. IF sy-subrc <> 0. ENDIF. ENDIF. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
CALL FUNCTION 'HR_READ_INFOTYPE' EXPORTING pernr = gw_pa0000-pernr infty = '0001' begda = p_date endda = p_date * BYPASS_BUFFER = ' ' * LEGACY_MODE = ' ' IMPORTING subrc = lv_subrc TABLES infty_tab = lt_0001 EXCEPTIONS infty_not_found = 1 OTHERS = 2. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
CALL FUNCTION 'HR_READ_INFOTYPE' EXPORTING pernr = gw_pa0000-pernr infty = '0001' begda = p_date endda = p_date * BYPASS_BUFFER = ' ' * LEGACY_MODE = ' ' IMPORTING subrc = lv_subrc TABLES infty_tab = lt_0001 EXCEPTIONS infty_not_found = 1 OTHERS = 2. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
CALL FUNCTION 'HR_READ_FOREIGN_OBJECT_TEXT' EXPORTING otype = 'C' objid = lt_0001-stell begda = lt_0001-begda endda = lt_0001-endda IMPORTING object_text = lw_data-stext EXCEPTIONS nothing_found = 1 wrong_objecttype = 2 missing_costcenter_data = 3 missing_object_id = 4 OTHERS = 5. ENDIF. |
1 2 3 4 5 6 7 8 9 |
CALL FUNCTION 'RH_READ_INFTY_1001' TABLES i1001 = lt_1001 objects = lt_object EXCEPTIONS nothing_found = 1 wrong_condition = 2 wrong_parameters = 3 OTHERS = 4. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
DATA: lv_subrc LIKE sy-subrc, lt_0001 TYPE TABLE OF p0001 WITH HEADER LINE, lt_0002 TYPE TABLE OF p0002 WITH HEADER LINE, lt_0185 TYPE TABLE OF p0185 WITH HEADER LINE, lt_0529 TYPE TABLE OF p0529 WITH HEADER LINE, lt_0022 TYPE TABLE OF p0022 WITH HEADER LINE, lt_0105 TYPE TABLE OF p0105 WITH HEADER LINE, lt_0016 TYPE TABLE OF p0016 WITH HEADER LINE, lt_0006 TYPE TABLE OF p0006 WITH HEADER LINE. DATA: BEGIN OF lw_data, pernr TYPE persno, "人员编号 begda TYPE begda, "入司日期 stat2 TYPE stat2, "员工状态 orgeh TYPE p0001-orgeh, "直属部门 plans TYPE p0001-plans, "职位 stell TYPE p0001-stell, "职务 stext TYPE p1000-stext, "职务名称 prozt(7) TYPE c, "职位占比 ename TYPE p0001-ename, "姓名 gesch(1) TYPE c, "性别 gbdat TYPE p0002-gbdat, "出生日期 ftext TYPE fatxt, "婚姻状况 icnum TYPE p0185-icnum, "身份证号 ltext TYPE text50, "民族 stext_xl TYPE sltxt, "最高学历 insti TYPE p0022-insti, "最高学历学校 stext_xw TYPE satxt, "最高学位 zhrsxzy TYPE p0022-zhrsxzy, "最高学历专业 usrid TYPE p0105-usrid, "手机号码 ctedt TYPE p0016-ctedt, "合同到期日 locat TYPE p0006-locat, "家庭地址 endda TYPE pa0000-endda, "离职日期 zzstate TYPE stat2, "人员在职状态 END OF lw_data. |
本文作者: GavinDong
版权属于: GavinDong博客
文章链接: https://gavindong.com/1072.html
如果使用过程中遇到问题,可 **点击此处** 交流沟通。
版权所有,转载时必须以链接形式注明作者和原始出处及本声明。