好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

excel-vba与sap-rfc接口调用实例.pdf

4页
  • 卖家[上传人]:简****9
  • 文档编号:97172388
  • 上传时间:2019-09-02
  • 文档格式:PDF
  • 文档大小:292.08KB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • # ‘ ‘ 、‘ m ⋯一 t | t ≈⋯‘ ~ 实用第一 智慧密集 ⋯ ⋯ ⋯ ⋯ 一 ⋯ ⋯ ⋯ ⋯⋯ 一⋯ E x c e 1 . V B A与sA p 一 c接 口调用实例 刘 静 摘 要 :通过 V B A程 序 实例 ,介 绍 了利 用 E x c e l 的 VB A 宏 程序 ,调 用 S A P 系统 的 RF C远 程 函数 接 口.实现外部数据与 S A P系统 的交互程序 实现 了在 VB A 中登录 S AP系统,并 完成对 S A P主 数据的写入和读取 ,同时也简单给出对 RF C、B DC、V B A的理解和经验 关键 词 :S A P系统 ;远 程 函数 调 用 ;V B A宏 程序 ;批 量数 据 转换 系 统 詈 2程 序 开 发 系 统 的 首 选 自 接 触 该 系 统 之 后 , 工 作 中 一 直 存 在 一 种 困 扰 , 一 ~ ~ 一 即在维 护 S A P主数据 时 ,重 复性 手工 劳动过 多 ,导致 工作 效 率低 下 ,数 据错误 率高 以员工上数 据维 护( B D C模板维护方 式)为例 ,其 操作 流程如下 : ( 1 )确认员_ [ 上数 据模板 ,主要包括 L F A1 表字段名称 。

      ( 2 )运行事务代码 S t t D B录制 B D C数据导入模板 ( 3 )按要求逐项填叮 了 工主数据并存为 T X T文本文件 ( 4 )用 S A P G U I T O O L S校验 数据 生成 【 1 J‘ 导 人 B D C数 据 文 本 ( 5 )执行事务代码 Z Z J : 传该 B D C文本 ( 6 )执行 事 务代 码 S M 3 5 ,执行 数 据 导人 S E S S I O N导 入 数据 ( 7 )在 S A P系统 的数 据导入 S E S S I O N生成 的 L O G中手 工 检查数据 导人情况 按照这个流程 手工维护主数据 ,重 复性步骤多 ,数据校验 与数据导入检杏繁琐 .出错后纠错查找过稗相 麻烦 于是在丁作之余 ,经常思考能 否通过 程序 自动实现主数据 的 自动校 验 、导人 和导入后 的检 查 数 据校 验相 对容 易 ,存 E x c e l 中用 V B A完全 可以实现 但 导入和导入后的检查则需要 和 S A P系统进行 数据交 换 ,接 口存 哪里 呢?通过 小断 交流学 习和检索相 关资料 ,终 于发现原 来 S A P系统早 已提供 了这样 的接 ¨,即 R F C远程 数调用 。

      1 测试环 境 ( 1 )Wi n ~d o w s X P下安装 微软 O f f i c e E x c e l ,笔 者使 用版本 2 0 0 7 , 2 0 0 3也 可 以 ( 2 )安装 S A P G U I 客户端 ,使用的版本 为 7 . 1 ,默认 安装 即可 ( 3 )服务器端要有测试 系统( T系统 ) ,J【_} j 户权 限设 置时 , 要拥 有对事务代码 S M3 5 ,S HD B ,X K 0 1的使用 权限 电 与 矗 2 . 1 模板 确 定 这里 不详 细介绍 员j 二 主 数据 字段 荻取 和 B D C录 制过 程 , 一 般有 实际 S A P系统工作 经验 的用户 都会接 触到 这一基 本技 术 只给 出录制好 的 B D C模板 文本在 E x c e l 中编辑好 的结果 , 如图 l 所示主数据模板亦如图 2所示 .模板 中所列 出的字段 都是变量 ,常量字段则在 B D C中默认数值 导人注意 B D C 一 员 工和 F I E L D 一 员工两个模板 巾的字段 名要 一一对应 ,完全 一致 例如 :如 :B D C 一 员 上中的 & L I F N R对应 的是 F I E L D一 员工第一 行的 L I F N R,以此类推。

      图 1 员 工 BDC 模 板 暴 墓 妒 皴》 弱 ‰ K{ ; 《 ; _ 一■ 紫 酱 “ - - 一 一_ ll ⋯ l 琏 窭 i i===={ : : . 鲢 二 ! 二 L 鱼 : 幽一 { ; 篆 墨 黼嚣 [ = = } 寿 瓣 圈 i 盘 ⋯ 一 图 2员 工 主 数 据 模 板 T y p e B D c T Y P E 要 自 定 义 结 构 0 d e : ” P r o g r a mN . a m ⋯ e As s仃 g : 3 5 ” D y n 0A ss 廿 n g ;s t , T 0 ma × B d c R 0 W I D As St r i n g ⋯ o i i vv v .P r o g r a mNa m ⋯ e : b d c T e mp l a t e_ C el lsF i e l d Na me As S t r i n g ⋯ .⋯ ⋯~⋯ ⋯⋯ ’ ⋯⋯一 V a u e A s s n g d X )b d c W o r k (id X 1 1.D y n P r : b d c T e m p Ia t e _c e lls ( 3 ) d p e . b d c W o r k ( i d x 1 .) . ---I D i :b d c Te mp I a t e . Ce I Is ( i d x 1 , 4) D i m : a ⋯p C o n n A s O b je .c b d c W 0 rk ( _d × d N a m e b d c— T e m p⋯ la t e .C⋯ e —U s ( id x 1 。

      5 ) d c T 曲A b j b d c T e mp la t e . Ce l l s ( i d x — l , ⋯ Se t , S a p Co nn= a t e O .b je (1Is A P F U N C O N lLd x 2 ⋯T o ⋯n ^ +^ D ^ ⋯ W jth s a p C n n e i 0 n ⋯ 一 i d x l O : L O s I L t I | I J VV o T I I o l a m A i J a X B ci L C I d c R Ii uv v w c l i e n t=” 9 0 0 ’ ⋯ ⋯ ⋯ ⋯ ’⋯‘ ⋯ ⋯⋯ ⋯ .A ⋯ p p l i c a t i o n I S e = 日 1 0 . . * * * * * * H t If xn b N d a c W O r m e = k [ I L ,J 2 ~ I I . Pr OF I g r a mNa me , T h e n ⋯ ⋯ ⋯ ⋯一 ⋯ ⋯~ ·S y s t e mNu t ub — er ⋯= “ ∞ ” ⋯ II'M lU A I}, 品 in : ·L a n g u a g “ ” , , 。

      } . D yD n P “ 0 0 0 0 ll 0r b d ⋯ I . I CI I⋯ . Wo r k ( i d x 1 ) . I D= “ T ” T h e n . ⋯ P a s s . wo d= “ p s s wo ” t 一 e:b d c Wo r k ( id x 1 )A I I I “c a i i I . d N a me h co =t x n Na e ⋯⋯⋯ En d Su b ⋯ ’ ’ 、 ⋯ ~ S u b R f c C a l l ( ) E l s e Di m b d c \d c W o r k ( 3 0 0 ) As BDC TYP E t e ⋯ mp Be g ““ D im F u n c A 如b j∞ .N a m e : , T D i m e Ms g A s Ob j e c t ” c w o r k ( I _d X 1 l( ~ l1 ) . F j e l d V a l u e ,忆 Th ^ n Di m u p d M o d .e A s O b j e c t : : k s hi I -- e e t—F u nici t1~Io n1 1 . D im t ra ? ∞ A s O b je c t: M a t c h ( M id ( b d c WIIg lU k .,g lU 1 . 一 F i e l d V a l u e , fi e ⋯ l d S e ⋯ t . R ⋯ o ws ( ⋯ 1 ) , ’ h s e e t s ( “ F e ld -p :.% ) Se le c t T I,1 ‘ f i e ld Se t . C e l ls ( id x 2 , f i e td Co l u m S e t b d c T e mp l a t e=W o r k s h e e t s ( “ B d c 一 员工” ) ⋯ ⋯ 。

      ⋯ ⋯ S e t s e t =w 0 r k S h e e t s ( “ d 埙 E t e ls m e p V a Iu e b d c w x 1 ) _ d V a I u e s t a r t Ro w = 2 f _. ‘ I ⋯ 一⋯ ⋯⋯⋯⋯⋯⋯ ma x B d c R o w =b d c T e mp l a t e - R a n g e( “ A|『 = A 3 0 0 ” ) · E n d ( x l_ , E 调 l l U 用 I I 写入 函数 D Ow . n ~ ) . R , , O n W + 口 ⋯. ‘ ; c + 口 . ^,nn . , 、 r | “, 1 、 C a l l Ap p e n d B D C , 一 一 W — r k ( id x 1 ) . P r g r a mNa me n ma x Da t a R0 w _f e l d s e t Ra n g e ( ‘' A1 : A3 o o E n d D wn b d c Wo r k ( I d × 1 ) . D y n P L t J e L m , ~ p U B U e { J g V I n J VU ¨ 。

      .F i e ⋯ ld - R W f ) ⋯ ⋯ ⋯ ⋯ ’ ⋯ U f T I n Ca l l S a p L o g o n I f S a p Co n n . Co n n e c t ion . L o go n ( 0 Tr u e )=T r u e T h e n S e t r f c F u n c = Sa p Co n n . Ad d( “ RF C _ CAL L _ T RANS AC — T I ON” ) S e t Bd c T a b= r f c F u n c . t a b l e s ( “ B DC ’T .ABL E” ) S e t r e Ms g= r f c F u n c . i mp o r t s ( “ M E S SG” ) S e t u p d M o d e= r f c F u n c . e x p o r t s ( “ UP DM0D E,, ) S e t t r a n C o d e=r f c F u n c . e x p o r t s ( ” T R A N C OD E ,’ ) E l s e Ms g B o x “ S a p l o g o n参数设置错误 ,未能登录 S a p系 Ne x t I f r f c F u n c . Ca l l =Tr u 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.