Good story for dear friends.
工作忙碌之余,不妨看看这个小故事,或许能有新的启发有一个人在森林中漫游的时候,突然遇见了一只饥饿的老虎,老虎大吼一声就扑了上来。他立刻用生平最大的力气和最快的速度逃开,但是老虎紧追不舍,他一直跑一直跑一直跑,最后被老虎逼入了断崖边上。站在悬崖边上,他想:「与其被老虎捉到,活活被咬、肢解,还不如跳入悬崖,说不定还有一线生机。」他纵身跳入悬崖,非常幸运的卡在一棵树上,那是长在断崖边的梅树,树上结满了梅子。正在庆幸的时候,他听到断崖深处传来巨大的吼声,往崖底望去,原来有一只凶猛的狮子正抬头看着他, 狮子
二篇关于SAP项目经验的生活文章
在blogchina看到了这二篇文章, 很有感触,在过10来天,自己也将面对另一种生活方式,有些期待,有些胆怯...转自《独行漫记》Professional 真幸福 这是几年独立顾问经验给我留下的最深体会,做一个好的Professional很爽。记得2000年底,开始在北加州葡萄酒王国Sonoma County为一家跨国酿酒公司实施SAP。我作为客户直接聘请的两名咨询顾问之一,加入到该项目的咨询承包商PLAUT公司组建的项目组中,与他们合作。因为客户对该公司的实施服务不太满意,希望派些"自己人"进入实施队伍,掌握主动权。但刚刚开始工作没几天,我们两人就都发现
在ABAP中將負號提前的方面
第一種:PERFORM change_qty USING l_srqty CHANGING it_inv-srqty. FORM change_qty USING p_qty CHANGING p_qty1. p_qty1 = p_qty. SHIFT p_qty1 LEFT DELETING LEADING ' '. SHIFT p_qty1 UP TO '-' LEFT CIRCULAR. CONDENSE p_qty1 NO-GAPS.ENDFORM. " change_qty第二種:目的:将字符串尾的负号放在字符串首 CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT' CHANGING value = itab-amunt.[@more@]
VMI - Vendor Managed Inventory
VMI的理念与应用 在快速响应用户需求的整个供应链上,产品分销环节的地位越来越重要。但是,传统的分销与库存管理模式并不能满足这一要求。例如: a在英国举办的98‘供应链管理专题会议上,一位与会者提到,在他的欧洲日杂公司,从渔场码头得到原材料,经过加工、配送到产品的最终销售需要150天时间,而产品加工的整个过程仅仅需要45分钟。 b以美国食品业的麦片粥为例,产品从工厂到超级市场,途经一连串各有库房的批发商、分销商、集运人,居然要走上104天。 c另有统计资料表明,在供应链的增值过程中,只有
實用且常用的FN:Upload Excel File Into Internal Table
调用主體:FORM upload_data_to_it_excel . CALL FUNCTION 'ZIEB_UPLOAD_EXCEL_INTO_ITAB' EXPORTING filename = p_path i_begin_col = 1 i_begin_row = 4 i_end_col = 17 i_end_row = 30000 TABLES itab = it_excel.ENDFORM. " UPLOAD_DATA_TO_IT_EXCELFN中的import項參數FILENAME LIKE RLGRAP-FILENAME Local file for upload/downloadI_BEGIN_COL TYPE II_BEGIN_ROW TYPE II_END_COL TYPE II_END_ROW TYPE I FN中的TABLES項參數ITABFN的Source co
abap 示范实例
abap 示范实例 超好的东东---申明:这文章不是我写的在这里我给初学者示范一个实例,讲讲abap开发报表的简单过程。程序的正确与否我们不与讨论,我们只关心这个程序的编写过程。首先,在任何程序的开始阶段,我们都要确定将会用到的表。我们所讲的这个程序是查询采购订单是否完成的。将会用到以下三个表:EKKO,EKPO,EKET。程序的开头为:REPORT TEST.TABLES: EKKO,EKET,EKPO.现在我们已经定义了所要用到的表,接下来的工作就是定义内表和数据。内表是用来存储我们从上述三个表中查询到的数据。相关定义如下:DATA: BEGIN OF ITAB OCCURS 0,
SAP技术概述(三转)
ESA (Enterprise Service Architecture) ESA (Enterprise Service Architecture) 简单的说, ESA是SAP 基于SOA(Service Oriented Architecture)的概念。主要目的通过WebService, 进一步提高SAP各业务系统间的统一性, 可重用性,建议更方便的业务流程开发模式。主要手段为 建立以Service为中心的开发模式. 因为service相对于组建或者其他软件封装技术来说, 有耦合度低,跨Internet, 范围更广, 跨平台, 粒度更自由等优点。 在web service的基础上, 建立统一的service infrastructure(就是后面说到的ESI). 建立所谓“模式-驱
利用Visual Basic开发SAP接口程序初探-RFC
SAP R/3系统是业界最先进、最稳定的ERP系统,国际和国内大型企业采用该系统的比例遥遥领先于其它ERP系统的总和。SAP R/3内建了二次开发平台,使用的开发语言叫做ABAP,是一种类似于COBOL的编程语言。ABAP在报表输出方面功能相对较弱(只能按行打印在屏幕上或者导出到Excel中处理),所以日常工作中经常需要在外部开发程序。通过程序接口自动读取SAP R/3的数据表(视图),在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。 SAP R/3的接口方式主要有RFC、IDOC、BAPI三种,本文要介绍的是相对比较简单的RFC(Romote
SAP技术概述(二转)
NetWeaver刚刚提到, NetWeaver是取代SAP Basis的新一代技术平台(TP). 简单说, NetWeaver体现了在2000年到目前为止的以Java/SOA为主要商务应用实现技术的时代里, SAP在技术上与业界技术的整合.它主要是在J2ee application server和ABAP application Server的基础上提供了统一的技术基础设施. 除了J2EE以外, NetWeaver还提供了WebDynpro和Portal作为 Web 开发的基础设施, 用户管理, 和.NET 或其他J2EE平台的集成, 于R/3的连接, ESA的实现等等.所有开发都在NetWeaver Studio中进行.NetWeaver Studio是基于Eclipse 的开发环境.下面这张图描述了
SAP技术概述(一转)
前言:很早就想写一点关于SAP的技术方面的文章, 但是一直不得闲, 也不知道该从哪里下手. SAP除了OS几乎生产了所有软件和solution, 并且不断在适应和加入业界的新技术, 调整自己原有的技术, 所以用一个大的概念来概括SAP的架构是很难的, 这也是为什么SAP的诸多概念, 比如mySAP, NetWeaver, ESA, AP, TP, BPP等等, 经常让人confuse的原因. 这些概念, 都有他的核心思想, 或者说核心动力, 但是, 他们不是一个产品, 而是一个概念, 所以他们的边界是无法弄的很清楚的, 不可避免, 他们之间会有Overlap. 比如DataArchiving, 它是一项负责保存应用数
根据事务代码找User exit
TABLES : tstc, "SAP Transaction Codes(SAP 事务代码) tadir, "Directory of Repository Objects(资源库对象的目录) modsapt, "SAP Enhancements - Short Texts(SAP增强-短文件) modact, "Modifications(修正) trdir, "System table TRDIR(系统表 TRDIR) tfdir, "Function Module(功能模块) enlfdir, "Additional Attributes for Function Modules(功能模块的附加属性) tstct. "Transaction Code Texts(事务代码文
RFC 同步异步调用实例
CALL RFC synchronize and asychronize Examples 同步调用RFC 示例*&---------------------------------------------------------------------**& Report sapbc415_rfcsync_s1 **& **&---------------------------------------------------------------------*REPORT SAPBC415_RFCSYNC_S1 MESSAGE-ID BC415.TABLES SPFLI.PARAMETERS: ICARR LIKE SFLIGHT-CARRID DEFAULT 'LH', ICONN LIKE SF
在updata物料主数据时,对相关VIEW的权限check方法.
Check for maintenance status (STATM) according to the mapping lists as belowViewMaintenance status(STATM)Work schedulingAAccountingBClassificationCMRPDPurchasingEProduction resources/toolsFCostingGBasic dataKStorageLForecastingPQuality managementQWarehouse managementSSalesVPlant stocksXStorage location stocksZfor example: AUTHORITY-CHECK OBJECT 'M_MATE_STA' ID 'STATM' FIELD 'D' ID 'ACTVT' FIELD '02'. IF sy-subrc <> 0. MESSAGE s398 WITH 'You
精辟的英文
一篇转自my space的文章,看起来很精典。* From see you one eye,I shit love you.* 自从看到你的第一眼,我便爱上你。* Your eyes close, I die; your eyes open, I come back to live.* Your eyes close and open again and again, I die again and again.* 妳的眼睛闭上,我就死了,你的眼睛打开,我又活过来,* 妳的眼睛贬啊贬,我就死去活来?* Maybe you do not remember me, no matter.* When you carefully look at me, you will one see clock.* 也许你不记得我,没有关系,当你仔细看着我,你就会一见钟情.[@more@]
用BAPI_MATERIAL_SAVEDATA对MRP Controller(MM01的MRP1视图中)作change的方法
FORM change_mpr_controller . DATA: st_headdata LIKE bapimathead , st_plantdata LIKE bapi_marc , st_plantdatax LIKE bapi_marcx , st_return LIKE bapiret2 . LOOP AT it_tab. CLEAR: st_headdata, st_plantdata, st_plantdatax, st_return. st_headdata-material = it_tab-matnr . st_headdata-mrp_view = 'X' . st_plantdata-plant = it_tab-werks . st_plantdata-mrp_ctrler = it_tab-new . st_plantdatax-plant = it_tab-werks .
使用VIEW_MAINTENANCE_CALL维护tableview
REPORT ztest.TABLES t001b.TYPES: BEGIN OF ty_mkoar, mkoar TYPE mkoar, END OF ty_mkoar. DATA: it_vimsellist TYPE TABLE OF vimsellist, iw_vimsellist TYPE vimsellist, it_vimexclfun TYPE TABLE OF vimexclfun, iw_vimexclfun TYPE vimexclfun.DATA: it_mkoar TYPE TABLE OF ty_mkoar, iw_mkoar TYPE ty_mkoar.DATA: w_flg TYPE c. PARAMETERS p_bukrs TYPE t001b-bukrs. SELECT-OPTIONS: s_mkoar FOR t001b-mkoar. START-OF-SELECTION. SELECT mkoar INTO CORRESPONDING FIELDS OF TABLE it_mkoa
ON CHANGE OF 的用法
刪除一個material No.只對應一個 Manufacturer的代碼...IF p_more IS NOT INITIAL. DATA l_count TYPE i. SORT it_result BY bmatn mfrnr. CLEAR: it_result, l_count. LOOP AT it_result. ON CHANGE OF it_result-bmatn OR it_result-mfrnr. l_count = l_count + 1. ENDON. AT END OF bmatn. IF l_count = 1. DELETE it_result WHERE bmatn = it_result-bmatn. ENDIF. CLEAR l_count. ENDAT. ENDLOOP. ENDIF. IF it_result[] IS INITIAL. MESSAGE s398(
不用SE11建Structure传Internal Table到Smartforms的方法
通常我们在做smartforms时都會自己建一个结构,以方便适用,但是有时候多建个结构很麻烦,我们在程序里都建了Internal table的结构了,其实我们可以不建这个结构。 在smartforms的 global settings->global definitions 里有个 types 我们可以在这里定义一个和程序里Internal table一样的结构。但是,在form interface 里定义参数的时候不是刚才定义的结构,激活的时候会报错。例如:在程式中定義一個Internal table*** Internal table for itemDATA: BEGIN OF it_item OCCURS 0, ebeln LIKE zpudnrlma0001-ebeln, e
SAP ALE (Application Link and Enabling)介绍
ALE 是Application Link and Enabling的缩写,是SAP专门为SAP与SAP之间所设计的整合中间件。IDocs是中介文本 (Intermediate DOCument) 的缩写,是SAP提供的系统整合专用的数据/消息格式。ALE在SAP 3.0版本开始就作为SAP整个应用体系的一部分,为分布式数据交换提供了可靠安全的通讯机制。ALE的设计,原本作为两个SAP流程之间的一种消息传递服务(Messaging Service) ,使SAP与SAP的业务流程之间企业数据能够有效的交换,为两个独立的SAP之间提供了的系统整合服务。不过,随着应用的发展,ALE/IDocs接口机制也已然成为与其它非SAP系统的标准
檢查貨幣是否存在SAP系統中
*&Check Currency exist DATA: ls_return LIKE bapiret2, lt_return LIKE TABLE OF bapiret2 WITH HEADER LINE. CALL FUNCTION 'AIA_CHECK_EXIST_CURRENCY' EXPORTING i_currency = p_curr TABLES return = lt_return EXCEPTIONS no_currency = 1 currency_not_exist = 2 OTHERS = 3. IF sy-subrc <> 0. MESSAGE s398(00) WITH 'Currency is not valid'. STOP. ENDIF.[@more@]