{"id":114827,"date":"2026-10-10T10:09:29","date_gmt":"2026-10-10T02:09:29","guid":{"rendered":"https:\/\/www.wsisp.com\/helps\/114827.html"},"modified":"2026-10-10T10:09:29","modified_gmt":"2026-10-10T02:09:29","slug":"sap-abap%ef%bc%9afico-%e6%a8%a1%e5%9d%97%e6%88%90%e6%9c%ac%e6%8e%a7%e5%88%b6%e5%bc%80%e5%8f%91%ef%bc%9a%e6%88%90%e6%9c%ac%e4%b8%ad%e5%bf%83-%e5%86%85%e9%83%a8%e8%ae%a2%e5%8d%95-%e7%94%9f%e4%ba%a7","status":"publish","type":"post","link":"https:\/\/www.wsisp.com\/helps\/114827.html","title":{"rendered":"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0"},"content":{"rendered":"<h2>FICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1&#xff1a;\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0<\/h2>\n<p>\u535a\u5ba2\u7b80\u4ecb&#xff1a;\u9488\u5bf9\u6210\u672c\u6838\u7b97\u7ba1\u7406\u9700\u6c42&#xff0c;\u8bb2\u89e3\u6210\u672c\u4e2d\u5fc3\u8d39\u7528\u5f52\u96c6\u5206\u914d\u903b\u8f91\u5f00\u53d1\u3001\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u7ba1\u63a7\u589e\u5f3a\u5f00\u53d1\u3001\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u4e0e\u5dee\u5f02\u5206\u6790\u903b\u8f91\u5f00\u53d1\u3001\u6210\u672c\u6708\u7ed3\u81ea\u52a8\u7a0b\u5e8f\u5f00\u53d1\u7684\u65b9\u6cd5&#xff0c;\u9644\u201c\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u8d85\u652f\u81ea\u52a8\u62e6\u622a\u201d\u201c\u4f5c\u4e1a\u6210\u672c\u81ea\u52a8\u5206\u914d\u201d\u201c\u6210\u672c\u5dee\u5f02\u81ea\u52a8\u7ed3\u8f6c\u201d\u7684\u5b9e\u73b0\u4ee3\u7801&#xff0c;\u63d0\u5347\u6210\u672c\u6838\u7b97\u6548\u7387\u4e0e\u6570\u636e\u51c6\u786e\u6027\u3002<\/p>\n<p>\u201c\u7b2c\u56db\u5341\u516d\u7bc7\u8bb2\u4e86\u5e94\u6536\u8d26\u6b3e&#xff0c;\u672c\u7bc7\u8f6e\u5230 FICO \u6210\u672c\u63a7\u5236\u6838\u5fc3&#xff01;\u4ece\u8d22\u52a1\u4f1a\u8ba1&#xff08;FI&#xff09;\u8f6c\u5230\u7ba1\u7406\u4f1a\u8ba1&#xff08;CO&#xff09;\u2014\u2014AUFK&#043;AUFK2&#043;COSPC&#043;COSTE \u56db\u8868\u8054\u52a8&#xff0c;\u6210\u672c\u4e2d\u5fc3\u5206\u644a &#043; \u5185\u90e8\u8ba2\u5355\u9884\u7b97\u62e6\u622a &#043; \u751f\u4ea7\u8ba2\u5355\u5dee\u5f02\u5206\u6790 &#043; \u6708\u7ed3\u81ea\u52a8\u7a0b\u5e8f&#xff0c;\u9644\u53ef\u590d\u7528\u7684 Z_COST_MONTHLY_CLOSE \u4e00\u952e\u6708\u7ed3\u4ee3\u7801\u3002\u201d<\/p>\n<hr \/>\n<h3>&#x1f4d6; \u5199\u5728\u524d\u9762<\/h3>\n<h4>\u672c\u7bc7\u5b9a\u4f4d<\/h4>\n<p>\u524d 46 \u7bc7\u8bb2\u7684\u662f\u8d22\u52a1\u4f1a\u8ba1&#xff08;FI&#xff09;\u2014\u2014\u600e\u4e48\u8bb0\u8d26\u3001\u600e\u4e48\u6e05\u8d26\u3001\u600e\u4e48\u8ba1\u63d0\u3002\u672c\u7bc7\u8f6c\u5165\u7ba1\u7406\u4f1a\u8ba1&#xff08;CO&#xff09;\u2014\u2014\u600e\u4e48\u5f52\u96c6\u6210\u672c\u3001\u600e\u4e48\u5206\u644a\u6210\u672c\u3001\u600e\u4e48\u5206\u6790\u5dee\u5f02\u3002FI \u662f\u201c\u8bb0\u8d26\u7ed9\u5916\u90e8\u770b\u7684\u201d&#xff0c;CO \u662f\u201c\u7b97\u8d26\u7ed9\u5185\u90e8\u7ba1\u7406\u770b\u7684\u201d\u3002\u6210\u672c\u63a7\u5236\u662f CO \u6a21\u5757\u7684\u6838\u5fc3&#xff0c;\u4e5f\u662f SAP \u4e2d\u589e\u5f3a\u7a7a\u95f4\u6700\u5927\u7684\u6a21\u5757\u4e4b\u4e00\u3002<\/p>\n<h4>\u672c\u7bc7\u9002\u5408\u8c01\u8bfb<\/h4>\n<ul>\n<li>\u9700\u8981\u5728 FICO-CO \u6a21\u5757\u505a\u6210\u672c\u589e\u5f3a\u7684\u5f00\u53d1\u8005<\/li>\n<li>\u8d1f\u8d23\u6210\u672c\u6838\u7b97\u548c\u7ba1\u63a7\u7684\u6210\u672c\u4f1a\u8ba1<\/li>\n<li>\u4ece FI \u51ed\u8bc1&#xff08;\u7b2c\u56db\u5341\u4e09\u7bc7\u7684 KOSTL\/PRCTR \u5b57\u6bb5&#xff09;\u5ef6\u4f38\u5230 CO \u7684\u5f00\u53d1\u8005<\/li>\n<\/ul>\n<h4>\u8d2f\u7a7f\u573a\u666f\u6982\u89c8<\/h4>\n<p>#mermaid-svg-ZyZ9W8Ob6shGQg5G{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .error-icon{fill:#552222;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .marker{fill:#333333;stroke:#333333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .marker.cross{stroke:#333333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G p{margin:0;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .cluster-label text{fill:#333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .cluster-label span{color:#333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .cluster-label span p{background-color:transparent;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .label text,#mermaid-svg-ZyZ9W8Ob6shGQg5G span{fill:#333;color:#333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .node rect,#mermaid-svg-ZyZ9W8Ob6shGQg5G .node circle,#mermaid-svg-ZyZ9W8Ob6shGQg5G .node ellipse,#mermaid-svg-ZyZ9W8Ob6shGQg5G .node polygon,#mermaid-svg-ZyZ9W8Ob6shGQg5G .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .rough-node .label text,#mermaid-svg-ZyZ9W8Ob6shGQg5G .node .label text,#mermaid-svg-ZyZ9W8Ob6shGQg5G .image-shape .label,#mermaid-svg-ZyZ9W8Ob6shGQg5G .icon-shape .label{text-anchor:middle;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .rough-node .label,#mermaid-svg-ZyZ9W8Ob6shGQg5G .node .label,#mermaid-svg-ZyZ9W8Ob6shGQg5G .image-shape .label,#mermaid-svg-ZyZ9W8Ob6shGQg5G .icon-shape .label{text-align:center;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .node.clickable{cursor:pointer;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .arrowheadPath{fill:#333333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-ZyZ9W8Ob6shGQg5G .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ZyZ9W8Ob6shGQg5G .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-ZyZ9W8Ob6shGQg5G .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .cluster text{fill:#333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .cluster span{color:#333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-ZyZ9W8Ob6shGQg5G rect.text{fill:none;stroke-width:0;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .icon-shape,#mermaid-svg-ZyZ9W8Ob6shGQg5G .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .icon-shape p,#mermaid-svg-ZyZ9W8Ob6shGQg5G .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .icon-shape .label rect,#mermaid-svg-ZyZ9W8Ob6shGQg5G .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ZyZ9W8Ob6shGQg5G .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-ZyZ9W8Ob6shGQg5G .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-ZyZ9W8Ob6shGQg5G :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span style=\"color:#fff !important\" class=\"nodeLabel\"><\/p>\n<p>\u6210\u672c\u63a7\u5236\u56db\u5927\u6838\u5fc3\u589e\u5f3a\u573a\u666f<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u573a\u666f1&#xff1a;\u6210\u672c\u4e2d\u5fc3\u8d39\u7528\u5f52\u96c6\u4e0e\u5206\u644a<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u573a\u666f2&#xff1a;\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u7ba1\u63a7<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u573a\u666f3&#xff1a;\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u5dee\u5f02\u5206\u6790<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u573a\u666f4&#xff1a;\u6210\u672c\u6708\u7ed3\u81ea\u52a8\u7a0b\u5e8f<\/p>\n<p><\/span><span style=\"color:#000 !important\" class=\"nodeLabel\"><\/p>\n<p>Z_COST_ALLOCATION_JOBZT_COST_ALLOCATION_RULE\u6309\u4eba\u6570\/\u9762\u79ef\/\u7528\u6237\u6570\u5206\u644a<\/p>\n<p><\/span><span style=\"color:#000 !important\" class=\"nodeLabel\"><\/p>\n<p>FAGL_POSTING_BADI_50ZT_INTERNAL_ORDER_CONFIG90% \u9884\u8b66 &#043; 100% \u62e6\u622a<\/p>\n<p><\/span><span style=\"color:#000 !important\" class=\"nodeLabel\"><\/p>\n<p>BADI_CONF_COSTSZT_COST_VARIANCE_CONFIG\u4ef7\u683c\/\u6570\u91cf\/\u6df7\u5408\u5dee\u5f02\u5206\u6790<\/p>\n<p><\/span><span style=\"color:#fff !important\" class=\"nodeLabel\"><\/p>\n<p>Z_COST_MONTHLY_CLOSE6 \u6b65\u9aa4\u4e00\u952e\u6708\u7ed3KSII\u2192KSV5\u2192KO88\u2192KK88<\/p>\n<p><\/span><\/p>\n<p>\u7248\u672c\u8bf4\u660e&#xff1a;\u672c\u7bc7\u5185\u5bb9\u57fa\u4e8e SAP NetWeaver 7.51\u3002\u6210\u672c\u5206\u644a\u3001\u5185\u90e8\u8ba2\u5355\u3001\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97\u5728 ECC 6.0&#043; \u548c S\/4 HANA \u4e2d\u7ed3\u6784\u4e00\u81f4\u3002BADI_ORDER_CK_COST \u548c BADI_CONF_COSTS \u662f EHP5&#043; \u63a8\u8350\u7684 BAdI\u3002<\/p>\n<hr \/>\n<h3>\u4e00\u3001\u6210\u672c\u63a7\u5236\u6838\u5fc3\u67b6\u6784<\/h3>\n<h4>1.1 FI vs CO \u6838\u5fc3\u5dee\u5f02<\/h4>\n<table>\n<tr>\u7ef4\u5ea6FI \u8d22\u52a1\u4f1a\u8ba1CO \u6210\u672c\u63a7\u5236&#xff08;\u672c\u7bc7&#xff09;\u6838\u5fc3\u5dee\u5f02<\/tr>\n<tbody>\n<tr>\n<td>\u5b9a\u4f4d<\/td>\n<td>\u5916\u90e8\u62a5\u544a&#xff08;\u6cd5\u5b9a\u8981\u6c42&#xff09;<\/td>\n<td>\u5185\u90e8\u7ba1\u7406&#xff08;\u7ba1\u7406\u9700\u8981&#xff09;<\/td>\n<td>\u5185\u5916\u4e4b\u5206<\/td>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3\u8868<\/td>\n<td>BKPF\/BSEG\/BKPF_ADD<\/td>\n<td>AUFK\/AUFK2\/COSPC\/COSTE<\/td>\n<td>\u51ed\u8bc1 vs \u5bf9\u8c61<\/td>\n<\/tr>\n<tr>\n<td>\u7ec4\u7ec7\u7ed3\u6784<\/td>\n<td>\u516c\u53f8\u4ee3\u7801&#xff08;BUKRS&#xff09;<\/td>\n<td>\u6210\u672c\u63a7\u5236\u8303\u56f4&#xff08;KOKRS&#xff09;<\/td>\n<td>FI \u6309\u516c\u53f8&#xff0c;CO \u6309\u63a7\u5236\u8303\u56f4<\/td>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3\u5bf9\u8c61<\/td>\n<td>\u4f1a\u8ba1\u79d1\u76ee&#xff08;SAKNR&#xff09;<\/td>\n<td>\u6210\u672c\u8981\u7d20&#xff08;KSTAR&#xff09;&#043; \u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355<\/td>\n<td>\u79d1\u76ee vs \u5bf9\u8c61<\/td>\n<\/tr>\n<tr>\n<td>\u81ea\u52a8\u8fc7\u8d26<\/td>\n<td>FI \u8fc7\u8d26\u9a71\u52a8 CO \u66f4\u65b0<\/td>\n<td>\u4e0d\u53cd\u5411\u9a71\u52a8 FI<\/td>\n<td>FI\u2192CO \u5355\u5411<\/td>\n<\/tr>\n<tr>\n<td>\u671f\u95f4<\/td>\n<td>\u4f1a\u8ba1\u671f\u95f4&#xff08;MONAT&#xff09;<\/td>\n<td>\u6210\u672c\u671f\u95f4&#xff08;\u540c\u4e0a&#xff09;<\/td>\n<td>\u5171\u7528<\/td>\n<\/tr>\n<tr>\n<td>\u6807\u51c6\u4e8b\u52a1\u7801<\/td>\n<td>FB01\/FB60\/FB70<\/td>\n<td>KS01\/KS02\/KO01\/KK01<\/td>\n<td>KS&#061;\u6210\u672c\u4e2d\u5fc3 KO&#061;\u5185\u90e8\u8ba2\u5355 KK&#061;\u751f\u4ea7\u8ba2\u5355<\/td>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3 BAdI<\/td>\n<td>FAGL_POSTING_BADI_50<\/td>\n<td>BADI_ORDER_CK_COST \/ BADI_CONF_COSTS<\/td>\n<td>FI \u8fc7\u8d26 vs CO \u5f52\u96c6<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>1.2 \u6210\u672c\u63a7\u5236\u6838\u5fc3\u5bf9\u8c61<\/h4>\n<p>\u6210\u672c\u63a7\u5236\u4e09\u5927\u5bf9\u8c61&#xff1a;<\/p>\n<p>  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502  \u6210\u672c\u4e2d\u5fc3&#xff08;Cost Center&#xff09;KS*                          \u2502<br \/>\n  \u2502    \u8868&#xff1a;CSKS&#xff08;\u4e3b\u6570\u636e&#xff09;&#043; COSTE&#xff08;\u884c\u9879\u76ee&#xff09;                  \u2502<br \/>\n  \u2502    \u7528\u9014&#xff1a;\u5f52\u96c6\u90e8\u95e8\/\u804c\u80fd\u7684\u6210\u672c\u8d39\u7528                        \u2502<br \/>\n  \u2502    \u5c42\u7ea7&#xff1a;\u6309\u7ec4\u7ec7\u67b6\u6784\u5212\u5206&#xff08;\u516c\u53f8\u2192\u90e8\u95e8\u2192\u56e2\u961f&#xff09;                \u2502<br \/>\n  \u2502    \u793a\u4f8b&#xff1a;K-SALES \u9500\u552e\u90e8 \/ K-RD \u7814\u53d1\u90e8 \/ K-HR \u4eba\u529b\u8d44\u6e90   \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<p>  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502  \u5185\u90e8\u8ba2\u5355&#xff08;Internal Order&#xff09;KO*                        \u2502<br \/>\n  \u2502    \u8868&#xff1a;AUFK&#xff08;\u4e3b\u6570\u636e&#xff09;&#043; AUFK2&#xff08;\u9884\u7b97&#xff09;&#043; COSPC&#xff08;\u8ba1\u5212\/\u5b9e\u9645&#xff09;\u2502<br \/>\n  \u2502    \u7528\u9014&#xff1a;\u5f52\u96c6\u4e00\u6b21\u6027\u9879\u76ee\/\u6d3b\u52a8\u6210\u672c                        \u2502<br \/>\n  \u2502    \u5c42\u7ea7&#xff1a;\u72ec\u7acb\u7684\u6210\u672c\u5bf9\u8c61&#xff08;\u53ef\u8de8\u90e8\u95e8&#xff09;                      \u2502<br \/>\n  \u2502    \u793a\u4f8b&#xff1a;IO2026001 \u5e74\u4f1a\u9879\u76ee \/ IO2026002 \u65b0\u54c1\u63a8\u5e7f        \u2502<br \/>\n  \u2502    \u72ec\u6709\u7279\u6027&#xff1a;\u6709\u9884\u7b97\u7ba1\u7406\u529f\u80fd&#xff08;BAPI_BUDGET_ALLOCATION&#xff09;   \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<p>  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502  \u751f\u4ea7\u8ba2\u5355&#xff08;Production Order&#xff09;KK* \/ WO*                \u2502<br \/>\n  \u2502    \u8868&#xff1a;AUFK&#xff08;\u4e3b\u6570\u636e&#xff09;&#043; COSPC&#xff08;\u8ba1\u5212\/\u5b9e\u9645&#xff09;&#043; AFPO&#xff08;\u7269\u6599&#xff09; \u2502<br \/>\n  \u2502    \u7528\u9014&#xff1a;\u5f52\u96c6\u4ea7\u54c1\u751f\u4ea7\u6210\u672c                               \u2502<br \/>\n  \u2502    \u5c42\u7ea7&#xff1a;\u6309\u7269\u6599&#043;\u5de5\u5382\u5212\u5206                                \u2502<br \/>\n  \u2502    \u72ec\u6709\u7279\u6027&#xff1a;\u6709\u7ed3\u7b97\u529f\u80fd&#xff08;\u7ed3\u7b97\u5230 CO-PA \u83b7\u5229\u5206\u6790&#xff09;         \u2502<br \/>\n  \u2502    \u6838\u5fc3\u5dee\u5f02&#xff1a;\u5b9e\u9645\u6210\u672c vs \u6807\u51c6\u6210\u672c &#061; \u5dee\u5f02\u5206\u6790\u7684\u6765\u6e90        \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<h4>1.3 \u6210\u672c\u8fc7\u8d26\u6d41\u7a0b<\/h4>\n<p>#mermaid-svg-RWRJqYzxkW1ku4mh{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-RWRJqYzxkW1ku4mh .error-icon{fill:#552222;}#mermaid-svg-RWRJqYzxkW1ku4mh .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-RWRJqYzxkW1ku4mh .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-RWRJqYzxkW1ku4mh .marker{fill:#333333;stroke:#333333;}#mermaid-svg-RWRJqYzxkW1ku4mh .marker.cross{stroke:#333333;}#mermaid-svg-RWRJqYzxkW1ku4mh svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-RWRJqYzxkW1ku4mh p{margin:0;}#mermaid-svg-RWRJqYzxkW1ku4mh .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-RWRJqYzxkW1ku4mh .cluster-label text{fill:#333;}#mermaid-svg-RWRJqYzxkW1ku4mh .cluster-label span{color:#333;}#mermaid-svg-RWRJqYzxkW1ku4mh .cluster-label span p{background-color:transparent;}#mermaid-svg-RWRJqYzxkW1ku4mh .label text,#mermaid-svg-RWRJqYzxkW1ku4mh span{fill:#333;color:#333;}#mermaid-svg-RWRJqYzxkW1ku4mh .node rect,#mermaid-svg-RWRJqYzxkW1ku4mh .node circle,#mermaid-svg-RWRJqYzxkW1ku4mh .node ellipse,#mermaid-svg-RWRJqYzxkW1ku4mh .node polygon,#mermaid-svg-RWRJqYzxkW1ku4mh .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-RWRJqYzxkW1ku4mh .rough-node .label text,#mermaid-svg-RWRJqYzxkW1ku4mh .node .label text,#mermaid-svg-RWRJqYzxkW1ku4mh .image-shape .label,#mermaid-svg-RWRJqYzxkW1ku4mh .icon-shape .label{text-anchor:middle;}#mermaid-svg-RWRJqYzxkW1ku4mh .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-RWRJqYzxkW1ku4mh .rough-node .label,#mermaid-svg-RWRJqYzxkW1ku4mh .node .label,#mermaid-svg-RWRJqYzxkW1ku4mh .image-shape .label,#mermaid-svg-RWRJqYzxkW1ku4mh .icon-shape .label{text-align:center;}#mermaid-svg-RWRJqYzxkW1ku4mh .node.clickable{cursor:pointer;}#mermaid-svg-RWRJqYzxkW1ku4mh .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-RWRJqYzxkW1ku4mh .arrowheadPath{fill:#333333;}#mermaid-svg-RWRJqYzxkW1ku4mh .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-RWRJqYzxkW1ku4mh .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-RWRJqYzxkW1ku4mh .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-RWRJqYzxkW1ku4mh .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-RWRJqYzxkW1ku4mh .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-RWRJqYzxkW1ku4mh .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-RWRJqYzxkW1ku4mh .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-RWRJqYzxkW1ku4mh .cluster text{fill:#333;}#mermaid-svg-RWRJqYzxkW1ku4mh .cluster span{color:#333;}#mermaid-svg-RWRJqYzxkW1ku4mh div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-RWRJqYzxkW1ku4mh .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-RWRJqYzxkW1ku4mh rect.text{fill:none;stroke-width:0;}#mermaid-svg-RWRJqYzxkW1ku4mh .icon-shape,#mermaid-svg-RWRJqYzxkW1ku4mh .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-RWRJqYzxkW1ku4mh .icon-shape p,#mermaid-svg-RWRJqYzxkW1ku4mh .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-RWRJqYzxkW1ku4mh .icon-shape .label rect,#mermaid-svg-RWRJqYzxkW1ku4mh .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-RWRJqYzxkW1ku4mh .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-RWRJqYzxkW1ku4mh .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-RWRJqYzxkW1ku4mh :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span style=\"color:#fff !important\" class=\"nodeLabel\"><\/p>\n<p>FB01 \u8fc7\u8d26 FI \u51ed\u8bc1BSEG-KOSTL\/AUFNR\/PRCTR<\/p>\n<p><\/span><span style=\"color:#000 !important\" class=\"nodeLabel\"><\/p>\n<p>SAP \u81ea\u52a8\u66f4\u65b0 COKONK \u786e\u5b9a\u6210\u672c\u8981\u7d20<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>COSTE \u6210\u672c\u4e2d\u5fc3\u884c\u9879\u76eeCOSPC \u8ba2\u5355\u884c\u9879\u76ee<\/p>\n<p><\/span><span style=\"color:#000 !important\" class=\"nodeLabel\"><\/p>\n<p>KSV5\/KO88\/KK88\u5206\u644a&#043;\u7ed3\u7b97<\/p>\n<p><\/span><br \/>\nFI \u8fc7\u8d26 \u2192 \u81ea\u52a8\u66f4\u65b0 CO \u7684\u5b8c\u6574\u94fe\u8def&#xff1a;<\/p>\n<p>  FB01 \u8fc7\u8d26 FI \u51ed\u8bc1<br \/>\n    \u2502<br \/>\n    \u251c\u2500 BSEG-KOSTL&#xff08;\u6210\u672c\u4e2d\u5fc3&#xff09;\u6709\u503c<br \/>\n    \u2502   \u2192 SAP \u81ea\u52a8\u5199 COSTE \u8868&#xff08;\u6210\u672c\u4e2d\u5fc3\u884c\u9879\u76ee&#xff09;<br \/>\n    \u2502<br \/>\n    \u251c\u2500 BSEG-AUFNR&#xff08;\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355&#xff09;\u6709\u503c<br \/>\n    \u2502   \u2192 SAP \u81ea\u52a8\u5199 COSPC \u8868&#xff08;\u8ba2\u5355\u884c\u9879\u76ee&#xff09;<br \/>\n    \u2502<br \/>\n    \u2514\u2500 BSEG-PRCTR&#xff08;\u5229\u6da6\u4e2d\u5fc3&#xff09;\u6709\u503c<br \/>\n        \u2192 SAP \u81ea\u52a8\u5199 CEPC \u76f8\u5173\u8868&#xff08;\u5229\u6da6\u4e2d\u5fc3&#xff09;<\/p>\n<p>  \u7b2c\u56db\u5341\u4e09\u7bc7 FAGL_ITEMS_SUBSTITUTION&#xff1a;<br \/>\n    \u6210\u672c\u4e2d\u5fc3\/\u5229\u6da6\u4e2d\u5fc3\u81ea\u52a8\u6d3e\u751f \u2192 \u81ea\u52a8\u586b\u5165 BSEG \u2192 \u81ea\u52a8\u9a71\u52a8 CO \u66f4\u65b0<br \/>\n    \u2192 \u4e00\u7bc7\u6587\u7ae0\u6253\u901a FI\u2192CO \u7684\u5165\u53e3&#xff01;<\/p>\n<hr \/>\n<h3>\u4e8c\u3001\u573a\u666f 1&#xff1a;\u6210\u672c\u4e2d\u5fc3\u8d39\u7528\u5f52\u96c6\u4e0e\u5206\u644a<\/h3>\n<h4>2.1 \u5206\u644a\u89c4\u5219\u914d\u7f6e\u8868<\/h4>\n<p>\u8868\u540d&#xff1a;ZT_COST_ALLOCATION_RULE&#xff08;\u6210\u672c\u5206\u644a\u89c4\u5219&#xff09;<br \/>\n  MANDT           TYPE MANDT<br \/>\n  RULE_ID         TYPE CHAR20<br \/>\n  COST_CENTER_SRC TYPE KOSTL          &#034; \u6e90\u6210\u672c\u4e2d\u5fc3&#xff08;\u8d39\u7528\u53d1\u751f\u5730&#xff09;<br \/>\n  COST_CENTER_DST TYPE KOSTL          &#034; \u76ee\u6807\u6210\u672c\u4e2d\u5fc3&#xff08;\u8d39\u7528\u627f\u53d7\u65b9&#xff09;<br \/>\n  ALLOCATION_TYPE TYPE CHAR1          &#034; P&#061;\u767e\u5206\u6bd4\/F&#061;\u56fa\u5b9a\u91d1\u989d\/S&#061;\u7edf\u8ba1\u6307\u6807<br \/>\n  PERCENTAGE      TYPE DEC5_2         &#034; \u5206\u644a\u767e\u5206\u6bd4<br \/>\n  AMOUNT          TYPE CURR15         &#034; \u56fa\u5b9a\u5206\u644a\u91d1\u989d<br \/>\n  STAT_KF         TYPE CHAR10         &#034; \u7edf\u8ba1\u6307\u6807&#xff08;\u5982\u5458\u5de5\u6570&#xff09;<br \/>\n  VALID_FROM      TYPE DATUM<br \/>\n  VALID_TO        TYPE DATUM<br \/>\n  ACTIVE          TYPE FLAG<br \/>\n  PRIORITY        TYPE NUMC2<\/p>\n<p>  \u793a\u4f8b\u6570\u636e&#xff08;\u98df\u5802\u6210\u672c\u6309\u4eba\u6570\u5206\u644a&#xff09;&#xff1a;<br \/>\n  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502 RULE_ \u2502 SRC_CC   \u2502 DST_CC   \u2502 TYPE   \u2502 PERCENTAGE  \u2502 ACTIVE  \u2502 PRIO \u2502<br \/>\n  \u2502 ID    \u2502          \u2502          \u2502        \u2502             \u2502         \u2502      \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 A001  \u2502 K-CAFE   \u2502 K-SALES  \u2502 P      \u2502 30.00       \u2502 X       \u2502 1    \u2502<br \/>\n  \u2502 A002  \u2502 K-CAFE   \u2502 K-RD     \u2502 P      \u2502 50.00       \u2502 X       \u2502 1    \u2502<br \/>\n  \u2502 A003  \u2502 K-CAFE   \u2502 K-HR     \u2502 P      \u2502 10.00       \u2502 X       \u2502 1    \u2502<br \/>\n  \u2502 A004  \u2502 K-CAFE   \u2502 K-FINANCE\u2502 P      \u2502 10.00       \u2502 X       \u2502 1    \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<h4>2.2 \u81ea\u5b9a\u4e49\u5206\u644a Job \u5b9e\u73b0<\/h4>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; \u540e\u53f0 Job&#xff1a;Z_COST_ALLOCATION_JOB<br \/>\n&#034; \u529f\u80fd&#xff1a;\u6708\u672b\u6309\u914d\u7f6e\u8868\u5206\u644a\u6210\u672c\u4e2d\u5fc3\u8d39\u7528 \u2192 \u751f\u6210 COSPC \u51ed\u8bc1 \u2192 \u81ea\u52a8\u66f4\u65b0 COSTE<br \/>\n&#034; \u8c03\u5ea6&#xff1a;\u6bcf\u6708 25 \u65e5 22:00&#xff08;\u6708\u7ed3\u524d&#xff09;<br \/>\n&#034; \u6838\u5fc3&#xff1a;SAP \u6807\u51c6 OKGA \u5206\u644a\u5faa\u73af\u505a\u4e0d\u5230\u7684\u573a\u666f&#xff08;\u6309\u914d\u7f6e\u8868\u7075\u6d3b\u5206\u644a&#xff09;<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>REPORT zcost_allocation_job.<\/p>\n<p>TABLES: csks, coste, cospc.<\/p>\n<p>TYPES:<br \/>\n  BEGIN OF ty_src_cost,<br \/>\n    kostl      TYPE kostl,<br \/>\n    kstar      TYPE kstar,<br \/>\n    period_amt TYPE curr15,<br \/>\n  END OF ty_src_cost,<br \/>\n  BEGIN OF ty_alloc_pair,<br \/>\n    src_cc     TYPE kostl,<br \/>\n    dst_cc     TYPE kostl,<br \/>\n    pct        TYPE dec5_2,<br \/>\n    amt        TYPE curr15,<br \/>\n    period_amt TYPE curr15,       &#034; \u6e90\u6210\u672c\u4e2d\u5fc3\u672c\u671f\u5b9e\u9645\u8d39\u7528<br \/>\n    alloc_amt  TYPE curr15,       &#034; \u5206\u644a\u91d1\u989d<br \/>\n  END OF ty_alloc_pair.<\/p>\n<p>SELECTION-SCREEN BEGIN OF BLOCK b1.<br \/>\n  PARAMETERS: p_kokrs  TYPE kokrs,<br \/>\n              p_period TYPE char6,<br \/>\n              p_test   TYPE flag DEFAULT &#039;X&#039;.<br \/>\nSELECTION-SCREEN END OF BLOCK b1.<\/p>\n<p>START-OF-SELECTION.<\/p>\n<p>  DATA: lt_src_costs TYPE TABLE OF ty_src_cost,<br \/>\n        lt_pairs     TYPE TABLE OF ty_alloc_pair.<\/p>\n<p>  PERFORM get_source_cost USING p_kokrs p_period<br \/>\n    CHANGING lt_src_costs.<\/p>\n<p>  IF lt_src_costs IS INITIAL.<br \/>\n    WRITE: \/ &#039;\u6ca1\u6709\u9700\u8981\u5206\u644a\u7684\u6210\u672c&#039;.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  PERFORM build_alloc_pairs USING lt_src_costs p_kokrs<br \/>\n    CHANGING lt_pairs.<\/p>\n<p>  IF lt_pairs IS INITIAL.<br \/>\n    WRITE: \/ &#039;\u6ca1\u6709\u5339\u914d\u7684\u5206\u644a\u89c4\u5219&#039;.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  WRITE: \/ &#039;\u627e\u5230&#039;, lines( lt_pairs ), &#039;\u6761\u5206\u644a\u660e\u7ec6&#039;.<br \/>\n  WRITE: \/ &#039;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-&#039;.<\/p>\n<p>  LOOP AT lt_pairs INTO DATA(ls_pair).<\/p>\n<p>    WRITE: \/ ls_pair-src_cc, &#039;\u2192&#039;, ls_pair-dst_cc,<br \/>\n           &#039;\u5206\u644a&#039;, ls_pair-alloc_amt,<br \/>\n           &#039;(\u6e90\u603b\u989d&#039;, ls_pair-period_amt, &#039;\u5360&#039;, ls_pair-pct, &#039;%)&#039;.<\/p>\n<p>  ENDLOOP.<\/p>\n<p>  IF p_test &#061; &#039;X&#039;.<br \/>\n    WRITE: \/, &#039;\u3010\u5e72\u8dd1\u6a21\u5f0f\u3011\u672a\u6267\u884c\u5b9e\u9645\u5206\u644a\u8fc7\u8d26&#039;.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  DATA: lv_cnt TYPE numc4.<br \/>\n  PERFORM execute_allocation USING lt_pairs p_kokrs p_period<br \/>\n    CHANGING lv_cnt.<\/p>\n<p>  COMMIT WORK.<br \/>\n  WRITE: \/, &#039;\u5206\u644a\u5b8c\u6210&#xff01;\u5171&#039;, lv_cnt, &#039;\u6761\u8bb0\u5f55\u8fc7\u8d26&#039;.<\/p>\n<p>END-OF-SELECTION.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; \u5185\u90e8 FORM&#xff1a;\u53d6\u6e90\u6210\u672c\u4e2d\u5fc3\u7684\u672c\u671f\u5b9e\u9645\u8d39\u7528&#xff08;FOR ALL ENTRIES \u67e5 COSTE&#xff09;<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM get_source_cost<br \/>\n  USING   iv_kokrs  TYPE kokrs<br \/>\n          iv_period TYPE char6<br \/>\n  CHANGING ct_src   TYPE TABLE OF ty_src_cost.<\/p>\n<p>  &#034; Step 1&#xff1a;\u67e5\u6240\u6709\u5206\u644a\u89c4\u5219\u7684\u6e90\u6210\u672c\u4e2d\u5fc3<br \/>\n  SELECT DISTINCT cost_center_src INTO TABLE &#064;DATA(lt_src_ccs)<br \/>\n    FROM zt_cost_allocation_rule<br \/>\n    WHERE allocation_type IN (&#039;P&#039;, &#039;F&#039;, &#039;S&#039;)<br \/>\n      AND active &#061; &#039;X&#039;<br \/>\n      AND ( valid_from &lt;&#061; &#064;sy-datum OR valid_from IS NULL )<br \/>\n      AND ( valid_to   &gt;&#061; &#064;sy-datum OR valid_to   IS NULL ).<\/p>\n<p>  IF lt_src_ccs IS INITIAL.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; Step 2&#xff1a;FOR ALL ENTRIES \u67e5 COSTE \u8868\u7684\u672c\u671f\u5b9e\u9645\u8d39\u7528<br \/>\n  SELECT coste~kostl, SUM( coste~wtg001 ) AS period_amt<br \/>\n    INTO TABLE &#064;ct_src<br \/>\n    FROM coste<br \/>\n    FOR ALL ENTRIES IN &#064;lt_src_ccs<br \/>\n    WHERE coste~kokrs &#061; &#064;iv_kokrs<br \/>\n      AND coste~kostl &#061; &#064;lt_src_ccs-cost_center_src<br \/>\n      AND coste~gjahr &#061; &#064;iv_period(4)<br \/>\n      AND coste~perio &#061; &#064;iv_period&#043;4(2)<br \/>\n      AND coste~koart &#061; &#039;K&#039;         &#034; \u5b9e\u9645\u8d39\u7528<br \/>\n    GROUP BY coste~kostl.<\/p>\n<p>ENDFORM.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; \u5185\u90e8 FORM&#xff1a;\u6784\u9020\u5206\u644a\u5bf9&#xff08;\u6e90\u2192\u76ee\u6807&#043;\u91d1\u989d&#xff09;<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM build_alloc_pairs<br \/>\n  USING   it_src_costs TYPE TABLE OF ty_src_cost<br \/>\n          iv_kokrs     TYPE kokrs<br \/>\n  CHANGING ct_pairs    TYPE TABLE OF ty_alloc_pair.<\/p>\n<p>  LOOP AT it_src_costs INTO DATA(ls_src).<\/p>\n<p>    &#034; \u67e5\u8be5\u6e90\u6210\u672c\u4e2d\u5fc3\u7684\u6240\u6709\u5206\u644a\u89c4\u5219<br \/>\n    SELECT *<br \/>\n      FROM zt_cost_allocation_rule<br \/>\n      INTO TABLE &#064;DATA(lt_rules)<br \/>\n      WHERE cost_center_src &#061; &#064;ls_src-kostl<br \/>\n        AND active &#061; &#039;X&#039;<br \/>\n      ORDER BY priority DESCENDING.<\/p>\n<p>    LOOP AT lt_rules INTO DATA(ls_rule).<\/p>\n<p>      DATA: ls_pair TYPE ty_alloc_pair.<br \/>\n      ls_pair-src_cc     &#061; ls_rule-cost_center_src.<br \/>\n      ls_pair-dst_cc     &#061; ls_rule-cost_center_dst.<br \/>\n      ls_pair-pct        &#061; ls_rule-percentage.<br \/>\n      ls_pair-period_amt &#061; ls_src-period_amt.<\/p>\n<p>      &#034; \u6309\u89c4\u5219\u7c7b\u578b\u8ba1\u7b97\u5206\u644a\u91d1\u989d<br \/>\n      CASE ls_rule-allocation_type.<br \/>\n        WHEN &#039;P&#039;.   &#034; \u767e\u5206\u6bd4<br \/>\n          ls_pair-alloc_amt &#061; ls_src-period_amt * ls_rule-percentage \/ 100.<br \/>\n        WHEN &#039;F&#039;.   &#034; \u56fa\u5b9a\u91d1\u989d<br \/>\n          ls_pair-alloc_amt &#061; ls_rule-amount.<br \/>\n        WHEN &#039;S&#039;.   &#034; \u7edf\u8ba1\u6307\u6807&#xff08;\u7b80\u5316&#xff09;<br \/>\n          ls_pair-alloc_amt &#061; ls_src-period_amt * ls_rule-percentage \/ 100.<br \/>\n      ENDCASE.<\/p>\n<p>      IF ls_pair-alloc_amt &gt; 0.<br \/>\n        APPEND ls_pair TO ct_pairs.<br \/>\n      ENDIF.<\/p>\n<p>    ENDLOOP.<\/p>\n<p>  ENDLOOP.<\/p>\n<p>ENDFORM.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; \u5185\u90e8 FORM&#xff1a;\u6267\u884c\u5206\u644a\u8fc7\u8d26&#xff08;FI \u51ed\u8bc1\u9a71\u52a8 CO \u66f4\u65b0&#xff09;<br \/>\n&#034; \u7b80\u5316&#xff1a;\u7528 SAP \u6807\u51c6 BAPI_ACC_DOCUMENT_POST&#xff0c;\u751f\u4ea7\u73af\u5883\u7528 KSU5\/KSW5 \u589e\u5f3a<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM execute_allocation<br \/>\n  USING   it_pairs  TYPE TABLE OF ty_alloc_pair<br \/>\n          iv_kokrs  TYPE kokrs<br \/>\n          iv_period TYPE char6<br \/>\n  CHANGING cv_cnt   TYPE numc4.<\/p>\n<p>  DATA: lt_items  TYPE TABLE OF bapiacgl09,<br \/>\n        ls_item   TYPE bapiacgl09,<br \/>\n        lt_return TYPE TABLE OF bapiret2.<\/p>\n<p>  cv_cnt &#061; 0.<\/p>\n<p>  &#034; \u6c47\u603b\u6240\u6709\u5206\u644a\u5bf9\u5230\u4e00\u5f20 FI \u51ed\u8bc1&#xff08;\u501f\u8d37\u5e73\u8861&#xff09;<br \/>\n  LOOP AT it_pairs INTO DATA(ls_p).<\/p>\n<p>    &#034; \u6e90\u6210\u672c\u4e2d\u5fc3\u8d37\u65b9&#xff08;\u51cf\u5c11&#xff09;<br \/>\n    CLEAR ls_item.<br \/>\n    ls_item-costcenter &#061; ls_p-src_cc.<br \/>\n    ls_item-amt_doccur &#061; &#8211; ls_p.alloc_amt.<br \/>\n    ls_item-comp_code  &#061; &#039;1000&#039;.<br \/>\n    ls_item-gl_account &#061; &#039;4200000001&#039;.   &#034; \u5206\u644a\u6210\u672c\u8981\u7d20<br \/>\n    APPEND ls_item TO lt_items.<\/p>\n<p>    &#034; \u76ee\u6807\u6210\u672c\u4e2d\u5fc3\u501f\u65b9&#xff08;\u589e\u52a0&#xff09;<br \/>\n    CLEAR ls_item.<br \/>\n    ls_item-costcenter &#061; ls_p-dst_cc.<br \/>\n    ls_item-amt_doccur &#061; ls_p.alloc_amt.<br \/>\n    ls_item-comp_code  &#061; &#039;1000&#039;.<br \/>\n    ls_item-gl_account &#061; &#039;4200000001&#039;.<br \/>\n    APPEND ls_item TO lt_items.<\/p>\n<p>  ENDLOOP.<\/p>\n<p>  IF lt_items IS INITIAL.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; \u8c03\u7528 BAPI \u8fc7\u8d26 FI \u51ed\u8bc1&#xff08;FI \u8fc7\u8d26\u81ea\u52a8\u89e6\u53d1 CO \u66f4\u65b0&#xff09;<br \/>\n  CALL FUNCTION &#039;BAPI_ACC_DOCUMENT_POST&#039;<br \/>\n    EXPORTING<br \/>\n      documentheader &#061; VALUE bapiache09(<br \/>\n        comp_code   &#061; &#039;1000&#039;<br \/>\n        doc_type    &#061; &#039;SA&#039;<br \/>\n        pstng_date  &#061; sy-datum<br \/>\n        currency    &#061; &#039;CNY&#039;<br \/>\n        header_txt  &#061; |\u6210\u672c\u5206\u644a-{ iv_period }| )<br \/>\n    TABLES<br \/>\n      accountgl &#061; lt_items<br \/>\n      return    &#061; lt_return.<\/p>\n<p>  READ TABLE lt_return INTO DATA(ls_ret) WITH KEY type &#061; &#039;E&#039;.<\/p>\n<p>  IF sy-subrc &#061; 0.<br \/>\n    WRITE: \/ &#039;\u5206\u644a\u8fc7\u8d26\u5931\u8d25&#xff1a;&#039;, ls_ret-message.<br \/>\n    ROLLBACK WORK.<br \/>\n  ELSE.<br \/>\n    CALL FUNCTION &#039;BAPI_TRANSACTION_COMMIT&#039;<br \/>\n      EXPORTING wait &#061; &#039;X&#039;.<br \/>\n    cv_cnt &#061; lines( it_pairs ).<br \/>\n  ENDIF.<\/p>\n<p>ENDFORM.<\/p>\n<p>\u26a0\ufe0f \u5173\u952e\u4fee\u6b63&#xff1a;<\/p>\n<li>\u6d88\u606f\u7c7b\u7edf\u4e00\u4e3a ZFI_ENH&#xff08;FICO \u6a21\u5757\u7edf\u4e00\u524d\u7f00&#xff09;\u3002<\/li>\n<li>SELECT SINGLE \u52a0 &#064; \u8f6c\u4e49&#xff0c;\u5b57\u6bb5\u5217\u8868\u7528\u9017\u53f7\u5206\u9694&#xff0c;WHERE \u6761\u4ef6\u52a0 &#064;\u3002<\/li>\n<li>BAPI_ACC_DOCUMENT_POST \u53c2\u6570\u6539\u4e3a\u6807\u51c6\u63a5\u53e3&#xff08;accountgl\u3001return&#xff09;&#xff0c;\u8fd4\u56de\u7528 BAPI_TRANSACTION_COMMIT\u3002<\/li>\n<li>COSTE \u8868\u5b57\u6bb5 WTG001 \u4ee3\u8868\u671f\u95f4 1 \u7684\u5b9e\u9645\u91d1\u989d&#xff0c;\u5b9e\u9645\u9879\u76ee\u9700\u6309\u52a8\u6001\u671f\u95f4\u53d6\u5b57\u6bb5\u3002<\/li>\n<li>\u5206\u644a\u8fc7\u8d26\u8d70 FI \u51ed\u8bc1\u9a71\u52a8 CO \u66f4\u65b0&#xff0c;\u662f\u6807\u51c6\u505a\u6cd5&#xff0c;\u65e0\u9700\u76f4\u63a5\u5199 COSPC \u8868\u3002<\/li>\n<hr \/>\n<h3>\u4e09\u3001\u573a\u666f 2&#xff1a;\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u7ba1\u63a7<\/h3>\n<h4>3.1 \u5185\u90e8\u8ba2\u5355\u9884\u7b97\u914d\u7f6e\u8868<\/h4>\n<p>\u8868\u540d&#xff1a;ZT_INTERNAL_ORDER_CONFIG&#xff08;\u5185\u90e8\u8ba2\u5355\u7ba1\u63a7&#xff09;<br \/>\n  MANDT           TYPE MANDT<br \/>\n  ORDER_TYPE      TYPE AUART          &#034; \u5185\u90e8\u8ba2\u5355\u7c7b\u578b&#xff08;*&#061;\u901a\u914d&#xff09;<br \/>\n  ORD_START       TYPE AUFNR          &#034; \u8ba2\u5355\u53f7\u533a\u95f4\u8d77<br \/>\n  ORD_END         TYPE AUFNR          &#034; \u8ba2\u5355\u53f7\u533a\u95f4\u6b62<br \/>\n  BUDGET_LIMIT    TYPE CURR15         &#034; \u9ed8\u8ba4\u9884\u7b97\u4e0a\u9650<br \/>\n  CHECK_BUDGET    TYPE FLAG           &#034; \u662f\u5426\u68c0\u67e5\u9884\u7b97<br \/>\n  WARN_PCT        TYPE DEC5_2         &#034; \u9884\u8b66\u767e\u5206\u6bd4&#xff08;\u5982 90%&#xff09;<br \/>\n  BLOCK_PCT       TYPE DEC5_2         &#034; \u786c\u62e6\u622a\u767e\u5206\u6bd4&#xff08;\u5982 100%&#xff09;<br \/>\n  ACTIVE          TYPE FLAG<br \/>\n  PRIORITY        TYPE NUMC2<\/p>\n<p>  \u793a\u4f8b\u6570\u636e&#xff1a;<br \/>\n  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502 ORDER_TY \u2502 ORD_      \u2502 BUDGET_   \u2502 CHECK_     \u2502 WARN_     \u2502 BLOCK_    \u2502 PRIO \u2502<br \/>\n  \u2502 PE       \u2502 START     \u2502 LIMIT     \u2502 BUDGET     \u2502 PCT       \u2502 PCT       \u2502      \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 IO01     \u2502 IO2026001 \u2502 100000    \u2502 X          \u2502 90.00     \u2502 100.00    \u2502 1    \u2502<br \/>\n  \u2502 IO02     \u2502 IO2026002 \u2502 50000     \u2502 X          \u2502 90.00     \u2502 100.00    \u2502 1    \u2502<br \/>\n  \u2502 *        \u2502 IO*       \u2502 200000    \u2502 X          \u2502 85.00     \u2502 100.00    \u2502 5    \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<h4>3.2 FI \u8fc7\u8d26\u65f6\u9884\u7b97\u6821\u9a8c\u5b9e\u73b0<\/h4>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; BAdI \u5b9e\u73b0&#xff1a;ZIMPL_INTERNAL_ORDER_BUDGET<br \/>\n&#034; BAdI&#xff1a;FAGL_POSTING_BADI_50&#xff08;\u7b2c\u56db\u5341\u4e09\u7bc7\u7684 BAdI \u590d\u7528&#xff01;&#xff09;<br \/>\n&#034; \u529f\u80fd&#xff1a;FI \u8fc7\u8d26\u65f6\u68c0\u67e5\u5185\u90e8\u8ba2\u5355\u9884\u7b97<br \/>\n&#034; \u89e6\u53d1&#xff1a;FB01\/FB60\/FB70 \u8fc7\u8d26\u65f6<br \/>\n&#034; \u6838\u5fc3&#xff1a;\u7b2c\u56db\u5341\u4e09\u7bc7\u7684\u9884\u7b97\u8868 ZT_FI_AMOUNT_AUTH \u662f\u9488\u5bf9\u7528\u6237\u7684&#xff0c;<br \/>\n&#034;      \u672c\u7bc7\u8865\u5145\u201c\u9488\u5bf9\u5185\u90e8\u8ba2\u5355\u7684\u9884\u7b97\u201d\u2014\u2014\u4e24\u4e2a\u7ef4\u5ea6\u53e0\u52a0<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>CLASS cl_impl_internal_order_budget DEFINITION PUBLIC FINAL CREATE PUBLIC.<br \/>\n  PUBLIC SECTION.<br \/>\n    INTERFACES if_ex_fagl_posting_badi_50.<br \/>\n  PRIVATE SECTION.<br \/>\nENDCLASS.<\/p>\n<p>CLASS cl_impl_internal_order_budget IMPLEMENTATION.<\/p>\n<p>  METHOD if_ex_fagl_posting_badi_50~process.<\/p>\n<p>    DATA: lv_aufnr TYPE aufnr,<br \/>\n          lv_belnr TYPE belnr,<br \/>\n          lv_bukrs TYPE bukrs.<\/p>\n<p>    lv_belnr &#061; im_bkpf-belnr.<br \/>\n    lv_bukrs &#061; im_bkpf-bukrs.<\/p>\n<p>    LOOP AT ct_items INTO DATA(ls_item).<\/p>\n<p>      &#034; \u53ea\u5904\u7406\u6709\u5185\u90e8\u8ba2\u5355\u53f7\u7684\u884c\u9879\u76ee<br \/>\n      IF ls_item-aufnr IS INITIAL.<br \/>\n        CONTINUE.<br \/>\n      ENDIF.<\/p>\n<p>      lv_aufnr &#061; ls_item-aufnr.<\/p>\n<p>      &#034; 1. \u67e5\u5185\u90e8\u8ba2\u5355\u7684\u603b\u9884\u7b97<br \/>\n      SELECT SINGLE budget_total INTO &#064;DATA(lv_budget)<br \/>\n        FROM aufk2<br \/>\n        WHERE aufnr &#061; &#064;lv_aufnr AND ledge &#061; &#039;00&#039;.<\/p>\n<p>      &#034; \u5982\u679c\u9884\u7b97\u6ca1\u8bbe\u7f6e&#xff08;SAP \u6807\u51c6\u53ef\u4ee5 0 \u9884\u7b97\u8fc7\u8d26&#xff09;<br \/>\n      IF lv_budget IS INITIAL OR lv_budget &#061; 0.<br \/>\n        CONTINUE.<br \/>\n      ENDIF.<\/p>\n<p>      &#034; 2. \u67e5\u5df2\u53d1\u751f\u7684\u5b9e\u9645\u8d39\u7528&#xff08;COSPC \u8868&#xff09;<br \/>\n      SELECT SUM( wtg001 ) INTO &#064;DATA(lv_actual)<br \/>\n        FROM cospc<br \/>\n        WHERE aufnr &#061; &#064;lv_aufnr<br \/>\n          AND koart &#061; &#039;K&#039;.     &#034; \u5b9e\u9645<\/p>\n<p>      &#034; \u52a0\u4e0a\u672c\u6b21\u8981\u8fc7\u8d26\u7684\u91d1\u989d&#xff08;WRBTR&#xff09;<br \/>\n      DATA: lv_new_actual TYPE curr15.<br \/>\n      lv_new_actual &#061; lv_actual &#043; abs( ls_item-wrbtr ).<\/p>\n<p>      &#034; 3. \u67e5\u914d\u7f6e\u8868\u7684\u9884\u8b66\/\u62e6\u622a\u9608\u503c<br \/>\n      SELECT SINGLE *<br \/>\n        FROM zt_internal_order_config<br \/>\n        INTO &#064;DATA(ls_cfg)<br \/>\n        WHERE ( order_type &#061; ( SELECT auart FROM aufk WHERE aufnr &#061; &#064;lv_aufnr )<br \/>\n                OR order_type &#061; &#039;*&#039; )<br \/>\n          AND check_budget &#061; &#039;X&#039;<br \/>\n          AND active &#061; &#039;X&#039;<br \/>\n        ORDER BY priority DESCENDING.<\/p>\n<p>      IF sy-subrc &lt;&gt; 0.<br \/>\n        CONTINUE.<br \/>\n      ENDIF.<\/p>\n<p>      &#034; 4. \u5224\u65ad\u5f53\u524d\u5b9e\u9645\u5360\u9884\u7b97\u767e\u5206\u6bd4<br \/>\n      DATA: lv_used_pct TYPE dec5_2.<br \/>\n      IF lv_budget &gt; 0.<br \/>\n        lv_used_pct &#061; lv_new_actual * 100 \/ lv_budget.<br \/>\n      ENDIF.<\/p>\n<p>      &#034; 5. \u5206\u7ea7\u5904\u7406<br \/>\n      IF lv_used_pct &gt;&#061; ls_cfg-block_pct.<br \/>\n        &#034; \u786c\u62e6\u622a<br \/>\n        MESSAGE e700(zfi_enh)<br \/>\n          WITH lv_aufnr lv_new_actual lv_budget lv_used_pct.<br \/>\n        RETURN.<\/p>\n<p>      ELSEIF lv_used_pct &gt;&#061; ls_cfg-warn_pct.<br \/>\n        &#034; \u9884\u8b66 &#043; BCS \u90ae\u4ef6<br \/>\n        MESSAGE w701(zfi_enh)<br \/>\n          WITH lv_aufnr lv_new_actual lv_budget lv_used_pct.<\/p>\n<p>        PERFORM send_budget_warning<br \/>\n          USING lv_aufnr lv_actual ls_item-wrbtr lv_budget lv_used_pct.<\/p>\n<p>      ENDIF.<\/p>\n<p>    ENDLOOP.<\/p>\n<p>  ENDMETHOD.<\/p>\n<p>  &#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n  &#034; \u5185\u90e8 FORM&#xff1a;\u9884\u7b97\u9884\u8b66 BCS \u90ae\u4ef6<br \/>\n  &#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n  FORM send_budget_warning<br \/>\n    USING   iv_aufnr  TYPE aufnr<br \/>\n            iv_actual TYPE curr15<br \/>\n            iv_adding TYPE wrbtr<br \/>\n            iv_budget TYPE curr15<br \/>\n            iv_pct    TYPE dec5_2.<\/p>\n<p>    &#034; \u67e5\u5185\u90e8\u8ba2\u5355\u8d1f\u8d23\u4eba&#xff08;AUFK-VERNR \u2192 KNA1-INTAD&#xff09;<br \/>\n    SELECT SINGLE a~vernr, k~intad<br \/>\n      INTO (&#064;DATA(lv_vernr), &#064;DATA(lv_email))<br \/>\n      FROM aufk AS a LEFT JOIN kna1 AS k ON k~kunnr &#061; a~vernr<br \/>\n      WHERE a~aufnr &#061; &#064;iv_aufnr.<\/p>\n<p>    IF lv_email IS INITIAL.<br \/>\n      lv_email &#061; &#039;finance&#064;company.com&#039;.<br \/>\n    ENDIF.<\/p>\n<p>    &#034; \u53d1\u9001 BCS \u90ae\u4ef6&#xff08;\u7b80\u5316&#xff0c;\u540c\u7b2c\u56db\u5341\u4e94\u7bc7\u6a21\u5f0f&#xff09;<br \/>\n    DATA: lv_body TYPE string.<br \/>\n    CONCATENATE<br \/>\n      &#039;&lt;html&gt;&lt;body&gt;&#039;<br \/>\n      &#039;&lt;h4&gt;\u26a0 \u5185\u90e8\u8ba2\u5355\u9884\u7b97\u9884\u8b66&lt;\/h4&gt;&#039;<br \/>\n      &#039;&lt;p&gt;\u8ba2\u5355\u53f7&#xff1a;&#039; iv_aufnr &#039;&lt;\/p&gt;&#039;<br \/>\n      &#039;&lt;p&gt;\u5f53\u524d\u5b9e\u9645&#xff1a;&#039; iv_actual &#039;&lt;\/p&gt;&#039;<br \/>\n      &#039;&lt;p&gt;\u672c\u6b21\u8fc7\u8d26\u589e\u52a0&#xff1a;&#039; iv_adding &#039;&lt;\/p&gt;&#039;<br \/>\n      &#039;&lt;p&gt;\u9884\u7b97\u4e0a\u9650&#xff1a;&#039; iv_budget &#039;&lt;\/p&gt;&#039;<br \/>\n      &#039;&lt;p&gt;\u8fc7\u8d26\u540e\u5360\u6bd4&#xff1a;&lt;b&gt;&#039; iv_pct &#039;%&lt;\/b&gt;&lt;\/p&gt;&#039;<br \/>\n      &#039;&lt;p&gt;\u8bf7\u53ca\u65f6\u5173\u6ce8\u9884\u7b97\u6267\u884c\u60c5\u51b5&#xff01;&lt;\/p&gt;&#039;<br \/>\n      &#039;&lt;\/body&gt;&lt;\/html&gt;&#039;<br \/>\n      INTO lv_body.<\/p>\n<p>    &#034; &#8230; BCS \u53d1\u9001\u4ee3\u7801&#xff08;\u7b80\u5316&#xff09;<\/p>\n<p>  ENDFORM.<\/p>\n<p>ENDCLASS.<\/p>\n<p>\u26a0\ufe0f \u5173\u952e\u4fee\u6b63&#xff1a;<\/p>\n<li>\u6d88\u606f\u7c7b\u7edf\u4e00\u4e3a ZFI_ENH\u3002<\/li>\n<li>\u5220\u9664\u672a\u5b9a\u4e49\u53d8\u91cf cv_no_errors \/ cv_no_warnings \u548c\u672a\u58f0\u660e\u5f02\u5e38 RAISE&#xff0c;\u6539\u7528 MESSAGE E\/W &#043; RETURN\u3002<\/li>\n<li>SELECT SINGLE \u52a0 &#064; \u8f6c\u4e49&#xff0c;\u5b50\u67e5\u8be2\u52a0 &#064;\u3002<\/li>\n<li>BUDGET_TOTAL \u5728 AUFK2 \u4e2d\u5b9e\u9645\u5b57\u6bb5\u540d\u53ef\u80fd\u4e3a WTGXXX \u6216 BUDGET&#xff0c;\u9700\u6309\u5b9e\u9645\u7cfb\u7edf\u786e\u8ba4\u3002<\/li>\n<li>abs \u51fd\u6570\u5c0f\u5199\u3002<\/li>\n<hr \/>\n<h3>\u56db\u3001\u573a\u666f 3&#xff1a;\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u5dee\u5f02\u5206\u6790<\/h3>\n<h4>4.1 \u5dee\u5f02\u7c7b\u578b\u4e0e\u914d\u7f6e\u8868<\/h4>\n<p>\u751f\u4ea7\u8ba2\u5355\u5dee\u5f02\u7c7b\u578b&#xff08;SAP \u6807\u51c6 8 \u79cd\u5dee\u5f02&#xff09;&#xff1a;<br \/>\n  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502  1. \u4ef7\u683c\u5dee\u5f02&#xff08;Price Variance&#xff09;                        \u2502<br \/>\n  \u2502     \u6807\u51c6\u4ef7\u683c vs \u5b9e\u9645\u91c7\u8d2d\u4ef7\u683c                           \u2502<br \/>\n  \u2502  2. \u6570\u91cf\u5dee\u5f02&#xff08;Quantity Variance&#xff09;                      \u2502<br \/>\n  \u2502     \u6807\u51c6\u7528\u91cf vs \u5b9e\u9645\u7528\u91cf                               \u2502<br \/>\n  \u2502  3. \u6df7\u5408\u5dee\u5f02&#xff08;Mix Variance&#xff09;                           \u2502<br \/>\n  \u2502     \u6807\u51c6\u4ea7\u54c1\u7ec4\u5408 vs \u5b9e\u9645\u4ea7\u54c1\u7ec4\u5408                       \u2502<br \/>\n  \u2502  4. \u5269\u4f59\u5dee\u5f02&#xff08;Remaining Variance&#xff09;                     \u2502<br \/>\n  \u2502     \u65e0\u6cd5\u5f52\u7c7b\u7684\u5269\u4f59\u5dee\u5f02                                 \u2502<br \/>\n  \u2502  5. \u5355\u4f4d\u8f93\u5165\u5dee\u5f02 \/ \u5355\u4f4d\u4ea7\u51fa\u5dee\u5f02                         \u2502<br \/>\n  \u2502  6. \u6279\u6b21\u8f93\u5165\u5dee\u5f02 \/ \u6279\u6b21\u4ea7\u51fa\u5dee\u5f02                         \u2502<br \/>\n  \u2502  7. \u56fa\u5b9a\u6210\u672c\u5dee\u5f02                                       \u2502<br \/>\n  \u2502  8. \u4f5c\u4e1a\u4ef7\u683c\u5dee\u5f02                                       \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<p>\u8868\u540d&#xff1a;ZT_COST_VARIANCE_CONFIG&#xff08;\u5dee\u5f02\u544a\u8b66\u9608\u503c&#xff09;<br \/>\n  MANDT           TYPE MANDT<br \/>\n  VARIANCE_TYPE   TYPE CHAR1          &#034; P&#061;\u4ef7\u683c\/Q&#061;\u6570\u91cf\/M&#061;\u6df7\u5408\/R&#061;\u5269\u4f59<br \/>\n  MATERIAL        TYPE MATNR          &#034; *&#061;\u901a\u914d<br \/>\n  WERKS           TYPE WERKS_D        &#034; *&#061;\u901a\u914d<br \/>\n  WARN_PCT        TYPE DEC5_2         &#034; \u9884\u8b66\u9608\u503c&#xff08;\u5982 5%&#xff09;<br \/>\n  BLOCK_PCT       TYPE DEC5_2         &#034; \u786c\u62e6\u622a\u9608\u503c&#xff08;\u5982 10%&#xff09;<br \/>\n  ACTIVE          TYPE FLAG<br \/>\n  PRIORITY        TYPE NUMC2<\/p>\n<p>  \u793a\u4f8b&#xff1a;<br \/>\n  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502 VARIANCE_TYPE  \u2502 MATNR  \u2502 WERKS \u2502 WARN_PCT\u2502 BLOCK_PCT\u2502 PRIO \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 P              \u2502 *      \u2502 1000  \u2502 5.00    \u2502 10.00    \u2502 1    \u2502<br \/>\n  \u2502 Q              \u2502 MAT1   \u2502 1000  \u2502 3.00    \u2502 8.00     \u2502 5    \u2502<br \/>\n  \u2502 M              \u2502 *      \u2502 *     \u2502 10.00   \u2502 20.00    \u2502 1    \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<h4>4.2 \u751f\u4ea7\u8ba2\u5355\u8fc7\u8d26\u65f6\u5dee\u5f02\u9884\u8b66 &#043; \u5dee\u5f02\u5206\u6790 Job<\/h4>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; BAdI \u5b9e\u73b0&#xff1a;ZIMPL_PROD_ORDER_VARIANCE<br \/>\n&#034; BAdI&#xff1a;BADI_CONF_COSTS&#xff08;\u751f\u4ea7\u8ba2\u5355\u786e\u8ba4\u8fc7\u8d26\u65f6&#xff09;<br \/>\n&#034; \u529f\u80fd&#xff1a;\u751f\u4ea7\u8ba2\u5355\u6536\u8d27\u786e\u8ba4\u65f6\u81ea\u52a8\u68c0\u67e5\u5dee\u5f02<br \/>\n&#034; \u89e6\u53d1&#xff1a;CO11N\/CO15N \u751f\u4ea7\u8ba2\u5355\u786e\u8ba4<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>CLASS cl_impl_prod_order_variance DEFINITION PUBLIC FINAL CREATE PUBLIC.<br \/>\n  PUBLIC SECTION.<br \/>\n    INTERFACES if_ex_conf_costs.<br \/>\n  PRIVATE SECTION.<br \/>\nENDCLASS.<\/p>\n<p>CLASS cl_impl_prod_order_variance IMPLEMENTATION.<\/p>\n<p>  METHOD if_ex_conf_costs~process_conf_costs.<\/p>\n<p>    DATA: lv_aufnr   TYPE aufnr,<br \/>\n          lv_matnr   TYPE matnr,<br \/>\n          lv_werks   TYPE werks_d,<br \/>\n          lv_amt     TYPE curr15,<br \/>\n          lv_std_amt TYPE curr15,<br \/>\n          lv_var_pct TYPE dec5_2.<\/p>\n<p>    lv_aufnr &#061; im_conf_aufnr.<\/p>\n<p>    &#034; 1. \u53d6\u751f\u4ea7\u8ba2\u5355\u7684\u7269\u6599\u548c\u5de5\u5382<br \/>\n    SELECT SINGLE matnr, werks INTO (lv_matnr, lv_werks)<br \/>\n      FROM afpo WHERE aufnr &#061; &#064;lv_aufnr.<\/p>\n<p>    &#034; 2. \u53d6\u6807\u51c6\u6210\u672c&#xff08;\u4ece CKIS \u6807\u51c6\u6210\u672c\u6838\u7b97\u8868&#xff09;<br \/>\n    SELECT SINGLE wtg001 INTO &#064;lv_std_amt<br \/>\n      FROM ckis<br \/>\n      WHERE matnr &#061; &#064;lv_matnr AND werks &#061; &#064;lv_werks AND kalnr &#061; &#039;01&#039;.<\/p>\n<p>    &#034; 3. \u53d6\u5b9e\u9645\u6210\u672c&#xff08;\u4ece COSPC \u751f\u4ea7\u8ba2\u5355\u5b9e\u9645&#xff09;<br \/>\n    SELECT SUM( wtg001 ) INTO &#064;lv_amt<br \/>\n      FROM cospc WHERE aufnr &#061; &#064;lv_aufnr AND koart &#061; &#039;K&#039;.<\/p>\n<p>    IF lv_std_amt &lt;&#061; 0 OR lv_amt &lt;&#061; 0.<br \/>\n      RETURN.   &#034; \u6ca1\u6709\u6807\u51c6\u6210\u672c\u6216\u5b9e\u9645\u6210\u672c<br \/>\n    ENDIF.<\/p>\n<p>    &#034; 4. \u8ba1\u7b97\u5dee\u5f02\u767e\u5206\u6bd4<br \/>\n    lv_var_pct &#061; abs( lv_amt &#8211; lv_std_amt ) * 100 \/ lv_std_amt.<\/p>\n<p>    &#034; 5. \u67e5\u914d\u7f6e\u8868\u9608\u503c<br \/>\n    SELECT SINGLE *<br \/>\n      FROM zt_cost_variance_config<br \/>\n      INTO &#064;DATA(ls_cfg)<br \/>\n      WHERE variance_type &#061; &#039;Q&#039;   &#034; \u6570\u91cf\u5dee\u5f02<br \/>\n        AND ( material &#061; &#064;lv_matnr OR material &#061; &#039;*&#039; )<br \/>\n        AND ( werks &#061; &#064;lv_werks OR werks &#061; &#039;*&#039; )<br \/>\n        AND active &#061; &#039;X&#039;<br \/>\n      ORDER BY priority DESCENDING.<\/p>\n<p>    IF sy-subrc &#061; 0.<\/p>\n<p>      IF lv_var_pct &gt;&#061; ls_cfg-block_pct.<br \/>\n        &#034; \u786c\u62e6\u622a&#xff08;\u8d85\u8fc7 10%&#xff09;<br \/>\n        MESSAGE e800(zfi_enh)<br \/>\n          WITH lv_aufnr lv_amt lv_std_amt lv_var_pct.<br \/>\n        RETURN.<\/p>\n<p>      ELSEIF lv_var_pct &gt;&#061; ls_cfg-warn_pct.<br \/>\n        &#034; \u9884\u8b66<br \/>\n        MESSAGE w801(zfi_enh)<br \/>\n          WITH lv_aufnr lv_amt lv_std_amt lv_var_pct.<\/p>\n<p>      ENDIF.<\/p>\n<p>    ENDIF.<\/p>\n<p>  ENDMETHOD.<\/p>\n<p>ENDCLASS.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; \u540e\u53f0 Job&#xff1a;Z_COST_VARIANCE_REPORT&#xff08;\u6210\u672c\u5dee\u5f02\u5206\u6790\u62a5\u8868&#xff09;<br \/>\n&#034; \u529f\u80fd&#xff1a;\u6bcf\u65e5\u626b\u63cf\u751f\u4ea7\u8ba2\u5355\u5dee\u5f02 \u2192 \u6c47\u603b\u6210\u5dee\u5f02\u62a5\u8868 \u2192 BCS \u90ae\u4ef6\u7ed9\u6210\u672c\u4f1a\u8ba1<br \/>\n&#034; \u8c03\u5ea6&#xff1a;\u6bcf\u65e5 8:30<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>REPORT zcost_variance_report.<\/p>\n<p>TABLES: aufk, afpo, cospc, ckis, mara.<\/p>\n<p>TYPES:<br \/>\n  BEGIN OF ty_variance,<br \/>\n    aufnr        TYPE aufnr,<br \/>\n    matnr        TYPE matnr,<br \/>\n    matbez       TYPE char50,<br \/>\n    werks        TYPE werks_d,<br \/>\n    std_cost     TYPE curr15,<br \/>\n    actual_cost  TYPE curr15,<br \/>\n    variance_amt TYPE curr15,<br \/>\n    variance_pct TYPE dec5_2,<br \/>\n    alert        TYPE flag,<br \/>\n  END OF ty_variance.<\/p>\n<p>DATA: gt_result TYPE TABLE OF ty_variance.<\/p>\n<p>SELECTION-SCREEN BEGIN OF BLOCK b1.<br \/>\n  PARAMETERS: p_werks TYPE werks_d,<br \/>\n              p_begda TYPE datum,<br \/>\n              p_endda TYPE datum,<br \/>\n              p_email TYPE adr6-smtp_addr.<br \/>\nSELECTION-SCREEN END OF BLOCK b1.<\/p>\n<p>START-OF-SELECTION.<\/p>\n<p>  PERFORM get_variance_data USING p_werks p_begda p_endda<br \/>\n    CHANGING gt_result.<\/p>\n<p>  IF gt_result IS INITIAL.<br \/>\n    WRITE: \/ &#039;\u6ca1\u6709\u751f\u4ea7\u8ba2\u5355\u5dee\u5f02&#039;.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; \u8f93\u51fa\u62a5\u8868 &#043; \u989c\u8272\u6807\u8bb0<br \/>\n  PERFORM display_with_color USING gt_result.<\/p>\n<p>  &#034; BCS \u90ae\u4ef6<br \/>\n  IF p_email IS NOT INITIAL.<br \/>\n    PERFORM send_variance_alert USING gt_result p_email.<br \/>\n  ENDIF.<\/p>\n<p>END-OF-SELECTION.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; \u4e3b FORM&#xff1a;\u8ba1\u7b97\u5dee\u5f02&#xff08;FOR ALL ENTRIES \u4e09\u5c42&#xff09;<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM get_variance_data<br \/>\n  USING   iv_werks TYPE werks_d<br \/>\n          iv_begda TYPE datum<br \/>\n          iv_endda TYPE datum<br \/>\n  CHANGING ct_result TYPE TABLE OF ty_variance.<\/p>\n<p>  &#034; Step 1&#xff1a;\u67e5\u671f\u95f4\u5185\u5df2\u5b8c\u6210\u7684\u751f\u4ea7\u8ba2\u5355<br \/>\n  SELECT aufk~aufnr, aufk~auart, aufk~erdat, afpo~matnr, afpo~werks<br \/>\n    INTO TABLE &#064;DATA(lt_orders)<br \/>\n    FROM aufk INNER JOIN afpo ON afpo~aufnr &#061; aufk~aufnr<br \/>\n    WHERE aufk~auart &#061; &#039;PP01&#039;<br \/>\n      AND aufk~erdat BETWEEN &#064;iv_begda AND &#064;iv_endda<br \/>\n      AND ( afpo~werks &#061; &#064;iv_werks OR &#064;iv_werks IS INITIAL ).<\/p>\n<p>  IF lt_orders IS INITIAL.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; Step 2&#xff1a;FOR ALL ENTRIES \u67e5\u5b9e\u9645\u6210\u672c<br \/>\n  SELECT cospc~aufnr, SUM( cospc~wtg001 ) AS actual<br \/>\n    INTO TABLE &#064;DATA(lt_actual)<br \/>\n    FROM cospc<br \/>\n    FOR ALL ENTRIES IN &#064;lt_orders<br \/>\n    WHERE cospc~aufnr &#061; &#064;lt_orders-aufnr<br \/>\n      AND cospc~koart &#061; &#039;K&#039;<br \/>\n    GROUP BY cospc~aufnr.<\/p>\n<p>  &#034; Step 3&#xff1a;FOR ALL ENTRIES \u67e5\u6807\u51c6\u6210\u672c<br \/>\n  SELECT ckis~matnr, ckis~werks, ckis~wtg001 AS std_cost<br \/>\n    INTO TABLE &#064;DATA(lt_std)<br \/>\n    FROM ckis<br \/>\n    FOR ALL ENTRIES IN &#064;lt_orders<br \/>\n    WHERE ckis~matnr &#061; &#064;lt_orders-matnr<br \/>\n      AND ckis~werks &#061; &#064;lt_orders-werks<br \/>\n      AND ckis~kalnr &#061; &#039;01&#039;.<\/p>\n<p>  &#034; Step 4&#xff1a;\u5339\u914d &#043; \u8ba1\u7b97\u5dee\u5f02<br \/>\n  LOOP AT lt_orders INTO DATA(ls_o).<\/p>\n<p>    DATA: ls_result TYPE ty_variance.<br \/>\n    ls_result-aufnr &#061; ls_o-aufnr.<br \/>\n    ls_result-matnr &#061; ls_o-matnr.<br \/>\n    ls_result-werks &#061; ls_o-werks.<\/p>\n<p>    &#034; \u5b9e\u9645\u6210\u672c<br \/>\n    READ TABLE lt_actual INTO DATA(ls_a) WITH KEY aufnr &#061; ls_o-aufnr.<br \/>\n    ls_result-actual_cost &#061; COALESCE( ls_a-actual, 0 ).<\/p>\n<p>    &#034; \u53d6\u8ba2\u5355\u4ea7\u91cf&#xff08;AFPO-LFIMG&#xff09;<br \/>\n    SELECT SINGLE lfimg INTO &#064;DATA(lv_qty)<br \/>\n      FROM afpo WHERE aufnr &#061; &#064;ls_o-aufnr.<\/p>\n<p>    &#034; \u6807\u51c6\u6210\u672c \u00d7 \u4ea7\u91cf<br \/>\n    READ TABLE lt_std INTO DATA(ls_s)<br \/>\n      WITH KEY matnr &#061; ls_o-matnr werks &#061; ls_o-werks.<br \/>\n    ls_result-std_cost &#061; COALESCE( ls_s-std_cost, 0 ) * COALESCE( lv_qty, 0 ).<\/p>\n<p>    &#034; \u7269\u6599\u63cf\u8ff0<br \/>\n    SELECT SINGLE maktx INTO &#064;DATA(lv_matbez)<br \/>\n      FROM makt<br \/>\n      WHERE matnr &#061; &#064;ls_o-matnr AND spras &#061; &#064;sy-langu.<br \/>\n    ls_result-matbez &#061; lv_matbez.<\/p>\n<p>    &#034; \u5dee\u5f02 &#061; \u5b9e\u9645 &#8211; \u6807\u51c6<br \/>\n    ls_result-variance_amt &#061; ls_result-actual_cost &#8211; ls_result-std_cost.<\/p>\n<p>    IF ls_result-std_cost &gt; 0.<br \/>\n      ls_result-variance_pct &#061;<br \/>\n        abs( ls_result-variance_amt ) * 100 \/ ls_result-std_cost.<br \/>\n    ENDIF.<\/p>\n<p>    &#034; \u5dee\u5f02\u8d85\u9608\u503c\u6807\u8bb0<br \/>\n    IF ls_result-variance_pct &gt;&#061; 5.<br \/>\n      ls_result-alert &#061; &#039;X&#039;.<br \/>\n    ENDIF.<\/p>\n<p>    IF ls_result-variance_amt &lt;&gt; 0.<br \/>\n      APPEND ls_result TO ct_result.<br \/>\n    ENDIF.<\/p>\n<p>  ENDLOOP.<\/p>\n<p>  SORT ct_result BY alert DESCENDING variance_pct DESCENDING.<\/p>\n<p>ENDFORM.<\/p>\n<p>\u26a0\ufe0f \u5173\u952e\u4fee\u6b63&#xff1a;<\/p>\n<li>\u6d88\u606f\u7c7b\u7edf\u4e00\u4e3a ZFI_ENH\u3002<\/li>\n<li>SELECT SINGLE \u52a0 &#064; \u8f6c\u4e49&#xff0c;\u5b57\u6bb5\u5217\u8868\u7528\u9017\u53f7\u5206\u9694&#xff0c;WHERE \u6761\u4ef6\u52a0 &#064;\u3002<\/li>\n<li>CONTINUE \u6539\u4e3a RETURN&#xff08;\u5728 BAdI \u65b9\u6cd5\u4e2d&#xff0c;CONTINUE \u65e0\u6548&#xff09;\u3002<\/li>\n<li>MATBEZ \u5b57\u6bb5\u53d6\u503c\u6539\u4e3a\u4ece MAKT-MAKTX \u5173\u8054\u67e5\u8be2\u3002<\/li>\n<li>abs \u51fd\u6570\u5c0f\u5199&#xff0c;sy-langu \u52a0 &#064; \u8f6c\u4e49\u3002<\/li>\n<hr \/>\n<h3>\u4e94\u3001\u573a\u666f 4&#xff1a;\u6210\u672c\u6708\u7ed3\u81ea\u52a8\u7a0b\u5e8f<\/h3>\n<h4>5.1 \u6708\u7ed3\u6d41\u7a0b\u603b\u89c8<\/h4>\n<p>#mermaid-svg-ese8tkfhvRLCsAFj{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-ese8tkfhvRLCsAFj .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-ese8tkfhvRLCsAFj .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-ese8tkfhvRLCsAFj .error-icon{fill:#552222;}#mermaid-svg-ese8tkfhvRLCsAFj .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-ese8tkfhvRLCsAFj .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-ese8tkfhvRLCsAFj .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-ese8tkfhvRLCsAFj .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-ese8tkfhvRLCsAFj .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-ese8tkfhvRLCsAFj .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-ese8tkfhvRLCsAFj .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-ese8tkfhvRLCsAFj .marker{fill:#333333;stroke:#333333;}#mermaid-svg-ese8tkfhvRLCsAFj .marker.cross{stroke:#333333;}#mermaid-svg-ese8tkfhvRLCsAFj svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-ese8tkfhvRLCsAFj p{margin:0;}#mermaid-svg-ese8tkfhvRLCsAFj .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-ese8tkfhvRLCsAFj .cluster-label text{fill:#333;}#mermaid-svg-ese8tkfhvRLCsAFj .cluster-label span{color:#333;}#mermaid-svg-ese8tkfhvRLCsAFj .cluster-label span p{background-color:transparent;}#mermaid-svg-ese8tkfhvRLCsAFj .label text,#mermaid-svg-ese8tkfhvRLCsAFj span{fill:#333;color:#333;}#mermaid-svg-ese8tkfhvRLCsAFj .node rect,#mermaid-svg-ese8tkfhvRLCsAFj .node circle,#mermaid-svg-ese8tkfhvRLCsAFj .node ellipse,#mermaid-svg-ese8tkfhvRLCsAFj .node polygon,#mermaid-svg-ese8tkfhvRLCsAFj .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-ese8tkfhvRLCsAFj .rough-node .label text,#mermaid-svg-ese8tkfhvRLCsAFj .node .label text,#mermaid-svg-ese8tkfhvRLCsAFj .image-shape .label,#mermaid-svg-ese8tkfhvRLCsAFj .icon-shape .label{text-anchor:middle;}#mermaid-svg-ese8tkfhvRLCsAFj .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-ese8tkfhvRLCsAFj .rough-node .label,#mermaid-svg-ese8tkfhvRLCsAFj .node .label,#mermaid-svg-ese8tkfhvRLCsAFj .image-shape .label,#mermaid-svg-ese8tkfhvRLCsAFj .icon-shape .label{text-align:center;}#mermaid-svg-ese8tkfhvRLCsAFj .node.clickable{cursor:pointer;}#mermaid-svg-ese8tkfhvRLCsAFj .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-ese8tkfhvRLCsAFj .arrowheadPath{fill:#333333;}#mermaid-svg-ese8tkfhvRLCsAFj .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-ese8tkfhvRLCsAFj .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-ese8tkfhvRLCsAFj .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ese8tkfhvRLCsAFj .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-ese8tkfhvRLCsAFj .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ese8tkfhvRLCsAFj .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-ese8tkfhvRLCsAFj .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-ese8tkfhvRLCsAFj .cluster text{fill:#333;}#mermaid-svg-ese8tkfhvRLCsAFj .cluster span{color:#333;}#mermaid-svg-ese8tkfhvRLCsAFj div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-ese8tkfhvRLCsAFj .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-ese8tkfhvRLCsAFj rect.text{fill:none;stroke-width:0;}#mermaid-svg-ese8tkfhvRLCsAFj .icon-shape,#mermaid-svg-ese8tkfhvRLCsAFj .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ese8tkfhvRLCsAFj .icon-shape p,#mermaid-svg-ese8tkfhvRLCsAFj .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-ese8tkfhvRLCsAFj .icon-shape .label rect,#mermaid-svg-ese8tkfhvRLCsAFj .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ese8tkfhvRLCsAFj .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-ese8tkfhvRLCsAFj .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-ese8tkfhvRLCsAFj :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span style=\"color:#fff !important\" class=\"nodeLabel\"><\/p>\n<p>\u6210\u672c\u6708\u7ed3 Z_COST_MONTHLY_CLOSE<\/p>\n<p><\/span><span style=\"color:#000 !important\" class=\"nodeLabel\"><\/p>\n<p>Step 1&#xff1a;\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97 KSII<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>Step 2&#xff1a;\u6210\u672c\u4e2d\u5fc3\u5206\u644a KSV5<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>Step 3&#xff1a;\u5185\u90e8\u8ba2\u5355\u7ed3\u7b97 KO88<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>Step 4&#xff1a;\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97 KK88<\/p>\n<p><\/span><span style=\"color:#000 !important\" class=\"nodeLabel\"><\/p>\n<p>Step 5&#xff1a;\u5dee\u5f02\u62a5\u8868 &#043; \u4e00\u81f4\u6027\u6821\u9a8c<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5b8c\u6210<\/p>\n<p><\/span><br \/>\n\u6210\u672c\u6708\u7ed3\u5b8c\u6574\u6d41\u7a0b&#xff08;Z_COST_MONTHLY_CLOSE \u4e8b\u52a1\u7801\u4e00\u952e\u6267\u884c&#xff09;&#xff1a;<\/p>\n<p>  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n  \u2502 Step 1&#xff1a;\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97&#xff08;KSII&#xff09;                         \u2502<br \/>\n  \u2502   \u2192 \u91cd\u65b0\u8ba1\u7b97\u4f5c\u4e1a\u7c7b\u578b\u7684\u5b9e\u9645\u4ef7\u683c                        \u2502<br \/>\n  \u2502   \u2192 \u628a\u5dee\u5f02\u5206\u644a\u5230\u6210\u672c\u4e2d\u5fc3\u548c\u8ba2\u5355                        \u2502<br \/>\n  \u2502   \u2192 BAPI: RKLS_PREISWERTUNG                          \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 Step 2&#xff1a;\u6210\u672c\u4e2d\u5fc3\u5206\u644a\u5faa\u73af&#xff08;KSV5&#xff09;                     \u2502<br \/>\n  \u2502   \u2192 SAP \u6807\u51c6\u5206\u644a\u5faa\u73af&#xff08;OKGA \u914d\u7f6e&#xff09;\u81ea\u52a8\u6267\u884c               \u2502<br \/>\n  \u2502   \u2192 \u672c\u7bc7\u7684 ZT_COST_ALLOCATION_RULE \u81ea\u5b9a\u4e49\u5206\u644a\u540c\u65f6\u8dd1    \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 Step 3&#xff1a;\u5185\u90e8\u8ba2\u5355\u7ed3\u7b97&#xff08;KO88&#xff09;                         \u2502<br \/>\n  \u2502   \u2192 \u628a\u5185\u90e8\u8ba2\u5355\u4f59\u989d\u7ed3\u7b97\u5230\u76ee\u6807\u6210\u672c\u4e2d\u5fc3\/\u5229\u6da6\u4e2d\u5fc3          \u2502<br \/>\n  \u2502   \u2192 BAPI: BAPI_ORDER_SETTLE                          \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 Step 4&#xff1a;\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97&#xff08;KK88&#xff09;                         \u2502<br \/>\n  \u2502   \u2192 \u628a\u751f\u4ea7\u8ba2\u5355\u5dee\u5f02\u7ed3\u7b97\u5230 CO-PA \u6216\u5e93\u5b58                  \u2502<br \/>\n  \u2502   \u2192 BAPI: BAPI_PRODORDER_SETTLE                      \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 Step 5&#xff1a;\u6210\u672c\u5dee\u5f02\u62a5\u8868&#xff08;Z_COST_VARIANCE_REPORT&#xff09;        \u2502<br \/>\n  \u2502   \u2192 \u6c47\u603b\u6240\u6709\u5dee\u5f02 &#043; \u989c\u8272\u6807\u8bb0 &#043; BCS \u90ae\u4ef6                \u2502<br \/>\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524<br \/>\n  \u2502 Step 6&#xff1a;\u4e00\u81f4\u6027\u6821\u9a8c                                    \u2502<br \/>\n  \u2502   \u2192 FI\/CO \u6570\u636e\u4e00\u81f4\u6027\u68c0\u67e5                              \u2502<br \/>\n  \u2502   \u2192 \u672a\u6e05\u8ba2\u5355\u6e05\u5355                                      \u2502<br \/>\n  \u2502   \u2192 \u5dee\u5f02\u8d85\u9608\u503c\u81ea\u52a8\u9884\u8b66                                \u2502<br \/>\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518<\/p>\n<h4>5.2 \u6708\u7ed3\u4e00\u952e\u6267\u884c\u5668<\/h4>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; \u62a5\u8868&#xff1a;Z_COST_MONTHLY_CLOSE<br \/>\n&#034; \u529f\u80fd&#xff1a;\u6210\u672c\u6708\u7ed3\u4e00\u952e\u6267\u884c\u5668\u2014\u2014\u4e32\u8d77 6 \u4e2a\u6b65\u9aa4<br \/>\n&#034; \u4e8b\u52a1\u7801&#xff1a;Z_COST_MC<br \/>\n&#034; \u521b\u5efa\u65e5\u671f&#xff1a;2026.10.10<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>REPORT zcost_monthly_close.<\/p>\n<p>TABLES: aufk, cospc.<\/p>\n<p>TYPES:<br \/>\n  BEGIN OF ty_step_status,<br \/>\n    step_num  TYPE numc2,<br \/>\n    step_name TYPE char50,<br \/>\n    status    TYPE char1,        &#034; S&#061;\u6210\u529f\/E&#061;\u5931\u8d25\/W&#061;\u8b66\u544a\/P&#061;\u5f85\u6267\u884c<br \/>\n    start_ts  TYPE timestampl,<br \/>\n    end_ts    TYPE timestampl,<br \/>\n    message   TYPE char255,<br \/>\n  END OF ty_step_status.<\/p>\n<p>DATA: gt_status TYPE TABLE OF ty_step_status,<br \/>\n      lv_start  TYPE timestampl.<\/p>\n<p>SELECTION-SCREEN BEGIN OF BLOCK b1.<br \/>\n  PARAMETERS: p_period TYPE char6,<br \/>\n              p_kokrs  TYPE kokrs,<br \/>\n              p_dry    TYPE flag DEFAULT &#039;X&#039;,<br \/>\n              p_email  TYPE adr6-smtp_addr.<br \/>\nSELECTION-SCREEN END OF BLOCK b1.<\/p>\n<p>SELECTION-SCREEN BEGIN OF BLOCK b2.<br \/>\n  PARAMETERS: p_skip1 TYPE flag,   &#034; \u8df3\u8fc7\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97<br \/>\n              p_skip2 TYPE flag,   &#034; \u8df3\u8fc7\u6210\u672c\u5206\u644a<br \/>\n              p_skip3 TYPE flag,   &#034; \u8df3\u8fc7\u5185\u90e8\u8ba2\u5355\u7ed3\u7b97<br \/>\n              p_skip4 TYPE flag,   &#034; \u8df3\u8fc7\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97<br \/>\n              p_skip5 TYPE flag.   &#034; \u8df3\u8fc7\u5dee\u5f02\u62a5\u8868<br \/>\nSELECTION-SCREEN END OF BLOCK b2.<\/p>\n<p>START-OF-SELECTION.<\/p>\n<p>  GET TIME STAMP FIELD lv_start.<\/p>\n<p>  WRITE: \/ &#039;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#039;.<br \/>\n  WRITE: \/ &#039;\u6210\u672c\u6708\u7ed3\u7a0b\u5e8f &#8211; &#039;, p_period.<br \/>\n  WRITE: \/ &#039;\u6210\u672c\u63a7\u5236\u8303\u56f4 &#8211; &#039;, p_kokrs.<br \/>\n  WRITE: \/ &#039;\u5f00\u59cb\u65f6\u95f4     &#8211; &#039;, lv_start.<br \/>\n  WRITE: \/ &#039;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#039;.<\/p>\n<p>  IF p_dry &#061; &#039;X&#039;.<br \/>\n    WRITE: \/, &#039;\u3010\u5e72\u8dd1\u6a21\u5f0f\u3011\u5c06\u6a21\u62df\u6267\u884c&#xff0c;\u4e0d\u4f1a\u5b9e\u9645\u8fc7\u8d26&#039;.<br \/>\n  ENDIF.<\/p>\n<p>  DATA: ls_st TYPE ty_step_status.<\/p>\n<p>  &#034; Step 1&#xff1a;\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97<br \/>\n  IF p_skip1 &lt;&gt; &#039;X&#039;.<br \/>\n    PERFORM step_activity_price<br \/>\n      USING p_period p_kokrs p_dry<br \/>\n      CHANGING ls_st.<br \/>\n    APPEND ls_st TO gt_status.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; Step 2&#xff1a;\u6210\u672c\u5206\u644a\u5faa\u73af<br \/>\n  IF p_skip2 &lt;&gt; &#039;X&#039;.<br \/>\n    PERFORM step_cost_allocation<br \/>\n      USING p_period p_kokrs p_dry<br \/>\n      CHANGING ls_st.<br \/>\n    APPEND ls_st TO gt_status.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; Step 3&#xff1a;\u5185\u90e8\u8ba2\u5355\u7ed3\u7b97<br \/>\n  IF p_skip3 &lt;&gt; &#039;X&#039;.<br \/>\n    PERFORM step_internal_order_settle<br \/>\n      USING p_period p_kokrs p_dry<br \/>\n      CHANGING ls_st.<br \/>\n    APPEND ls_st TO gt_status.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; Step 4&#xff1a;\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97<br \/>\n  IF p_skip4 &lt;&gt; &#039;X&#039;.<br \/>\n    PERFORM step_prod_order_settle<br \/>\n      USING p_period p_kokrs p_dry<br \/>\n      CHANGING ls_st.<br \/>\n    APPEND ls_st TO gt_status.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; Step 5&#xff1a;\u5dee\u5f02\u62a5\u8868 &#043; \u6821\u9a8c<br \/>\n  IF p_skip5 &lt;&gt; &#039;X&#039;.<br \/>\n    PERFORM step_variance_report<br \/>\n      USING p_period p_kokrs p_dry p_email<br \/>\n      CHANGING ls_st.<br \/>\n    APPEND ls_st TO gt_status.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; \u6c47\u603b\u8f93\u51fa<br \/>\n  WRITE: \/ &#039;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#039;.<br \/>\n  WRITE: \/ &#039;\u6708\u7ed3\u6267\u884c\u7ed3\u679c\u6c47\u603b&#xff1a;&#039;.<br \/>\n  LOOP AT gt_status INTO DATA(ls_final).<br \/>\n    WRITE: \/ ls_final-step_num, ls_final-step_name, ls_final-status.<br \/>\n  ENDLOOP.<br \/>\n  WRITE: \/ &#039;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#039;.<\/p>\n<p>  READ TABLE gt_status INTO DATA(ls_check) WITH KEY status &#061; &#039;E&#039;.<br \/>\n  IF sy-subrc &#061; 0.<br \/>\n    MESSAGE e900(zfi_enh) WITH &#039;\u6708\u7ed3\u5b58\u5728\u5931\u8d25\u6b65\u9aa4&#xff0c;\u8bf7\u68c0\u67e5&#039;.<br \/>\n  ELSE.<br \/>\n    WRITE: \/ &#039;\u2713 \u6708\u7ed3\u5b8c\u6210&#xff01;&#039;.<br \/>\n  ENDIF.<\/p>\n<p>END-OF-SELECTION.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; Step 1&#xff1a;\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97&#xff08;\u8c03\u7528 SAP \u6807\u51c6\u51fd\u6570&#xff09;<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM step_activity_price<br \/>\n  USING   iv_period TYPE char6<br \/>\n          iv_kokrs  TYPE kokrs<br \/>\n          iv_dry    TYPE flag<br \/>\n  CHANGING cv_st    TYPE ty_step_status.<\/p>\n<p>  cv_st-step_num  &#061; 1.<br \/>\n  cv_st-step_name &#061; &#039;\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97&#xff08;KSII&#xff09;&#039;.<br \/>\n  GET TIME STAMP FIELD cv_st-start_ts.<\/p>\n<p>  IF iv_dry &#061; &#039;X&#039;.<br \/>\n    cv_st-status  &#061; &#039;W&#039;.<br \/>\n    cv_st-message &#061; &#039;\u3010\u5e72\u8dd1\u3011\u6a21\u62df\u6267\u884c&#039;.<br \/>\n    GET TIME STAMP FIELD cv_st-end_ts.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  CALL FUNCTION &#039;RKLS_PREISWERTUNG&#039;<br \/>\n    EXPORTING<br \/>\n      kokrs   &#061; iv_kokrs<br \/>\n      periode &#061; iv_period&#043;4(2)<br \/>\n      gjahr   &#061; iv_period(4)<br \/>\n      test    &#061; &#039; &#039;<br \/>\n      mode    &#061; &#039; &#039;.<\/p>\n<p>  IF sy-subrc &#061; 0.<br \/>\n    cv_st-status  &#061; &#039;S&#039;.<br \/>\n    cv_st-message &#061; &#039;\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97\u6210\u529f&#039;.<br \/>\n    COMMIT WORK.<br \/>\n  ELSE.<br \/>\n    cv_st-status  &#061; &#039;E&#039;.<br \/>\n    cv_st-message &#061; |\u5931\u8d25&#xff08;SUBRC&#061;{ sy-subrc }&#xff09;|.<br \/>\n  ENDIF.<\/p>\n<p>  GET TIME STAMP FIELD cv_st-end_ts.<\/p>\n<p>ENDFORM.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; Step 2&#xff1a;\u6210\u672c\u5206\u644a\u5faa\u73af<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM step_cost_allocation<br \/>\n  USING   iv_period TYPE char6<br \/>\n          iv_kokrs  TYPE kokrs<br \/>\n          iv_dry    TYPE flag<br \/>\n  CHANGING cv_st    TYPE ty_step_status.<\/p>\n<p>  cv_st-step_num  &#061; 2.<br \/>\n  cv_st-step_name &#061; &#039;\u6210\u672c\u4e2d\u5fc3\u5206\u644a\u5faa\u73af&#xff08;KSV5&#xff09;&#039;.<br \/>\n  GET TIME STAMP FIELD cv_st-start_ts.<\/p>\n<p>  IF iv_dry &#061; &#039;X&#039;.<br \/>\n    cv_st-status  &#061; &#039;W&#039;.<br \/>\n    cv_st-message &#061; &#039;\u3010\u5e72\u8dd1\u3011\u6a21\u62df\u6267\u884c&#039;.<br \/>\n    GET TIME STAMP FIELD cv_st-end_ts.<br \/>\n    RETURN.<br \/>\n  ENDIF.<\/p>\n<p>  &#034; \u8c03\u7528 OKGA \u914d\u7f6e\u7684\u6240\u6709\u5206\u644a\u5faa\u73af<br \/>\n  CALL FUNCTION &#039;RKSS_KOSTENVERTEILUNG&#039;<br \/>\n    EXPORTING<br \/>\n      kokrs   &#061; iv_kokrs<br \/>\n      periode &#061; iv_period&#043;4(2)<br \/>\n      gjahr   &#061; iv_period(4)<br \/>\n      test    &#061; &#039; &#039;.<\/p>\n<p>  IF sy-subrc &#061; 0.<br \/>\n    cv_st-status  &#061; &#039;S&#039;.<br \/>\n    cv_st-message &#061; &#039;\u5206\u644a\u5faa\u73af &#043; \u81ea\u5b9a\u4e49\u5206\u644a\u6210\u529f&#039;.<br \/>\n    COMMIT WORK.<br \/>\n  ELSE.<br \/>\n    cv_st-status  &#061; &#039;E&#039;.<br \/>\n    cv_st-message &#061; |\u5931\u8d25&#xff08;SUBRC&#061;{ sy-subrc }&#xff09;|.<br \/>\n  ENDIF.<\/p>\n<p>  GET TIME STAMP FIELD cv_st-end_ts.<\/p>\n<p>ENDFORM.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; Step 3&#xff1a;\u5185\u90e8\u8ba2\u5355\u7ed3\u7b97<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM step_internal_order_settle<br \/>\n  USING   iv_period TYPE char6<br \/>\n          iv_kokrs  TYPE kokrs<br \/>\n          iv_dry    TYPE flag<br \/>\n  CHANGING cv_st    TYPE ty_step_status.<\/p>\n<p>  cv_st-step_num  &#061; 3.<br \/>\n  cv_st-step_name &#061; &#039;\u5185\u90e8\u8ba2\u5355\u7ed3\u7b97&#xff08;KO88&#xff09;&#039;.<br \/>\n  GET TIME STAMP FIELD cv_st-start_ts.<\/p>\n<p>  &#034; \u67e5\u6240\u6709\u672a\u7ed3\u7b97\u7684\u5185\u90e8\u8ba2\u5355<br \/>\n  SELECT aufnr INTO TABLE &#064;DATA(lt_orders)<br \/>\n    FROM aufk<br \/>\n    WHERE aufart &#061; &#039;IO01&#039;.<\/p>\n<p>  DATA: lv_success TYPE numc4 VALUE 0,<br \/>\n        lv_fail    TYPE numc4 VALUE 0.<\/p>\n<p>  LOOP AT lt_orders INTO DATA(ls_aufnr).<\/p>\n<p>    IF iv_dry &#061; &#039;X&#039;.<br \/>\n      CONTINUE.<br \/>\n    ENDIF.<\/p>\n<p>    CALL FUNCTION &#039;BAPI_ORDER_SETTLE&#039;<br \/>\n      EXPORTING<br \/>\n        order_number &#061; ls_aufnr<br \/>\n        fiscalyear   &#061; iv_period(4)<br \/>\n        testrun      &#061; &#039; &#039;.<\/p>\n<p>    IF sy-subrc &#061; 0.<br \/>\n      lv_success &#061; lv_success &#043; 1.<br \/>\n    ELSE.<br \/>\n      lv_fail &#061; lv_fail &#043; 1.<br \/>\n    ENDIF.<\/p>\n<p>  ENDLOOP.<\/p>\n<p>  COMMIT WORK.<\/p>\n<p>  cv_st-status  &#061; &#039;S&#039;.<br \/>\n  cv_st-message &#061; |\u7ed3\u7b97\u5b8c\u6210&#xff1a;\u6210\u529f{ lv_success } \u5931\u8d25{ lv_fail }|.<br \/>\n  GET TIME STAMP FIELD cv_st-end_ts.<\/p>\n<p>ENDFORM.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; Step 4&#xff1a;\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM step_prod_order_settle<br \/>\n  USING   iv_period TYPE char6<br \/>\n          iv_kokrs  TYPE kokrs<br \/>\n          iv_dry    TYPE flag<br \/>\n  CHANGING cv_st    TYPE ty_step_status.<\/p>\n<p>  cv_st-step_num  &#061; 4.<br \/>\n  cv_st-step_name &#061; &#039;\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97&#xff08;KK88&#xff09;&#039;.<br \/>\n  GET TIME STAMP FIELD cv_st-start_ts.<\/p>\n<p>  SELECT aufnr INTO TABLE &#064;DATA(lt_prod)<br \/>\n    FROM aufk WHERE aufart &#061; &#039;PP01&#039;.<\/p>\n<p>  DATA: lv_success TYPE numc4 VALUE 0.<\/p>\n<p>  LOOP AT lt_prod INTO DATA(ls_pauf).<\/p>\n<p>    IF iv_dry &#061; &#039;X&#039;.<br \/>\n      CONTINUE.<br \/>\n    ENDIF.<\/p>\n<p>    CALL FUNCTION &#039;BAPI_PRODORDER_SETTLE&#039;<br \/>\n      EXPORTING<br \/>\n        order_number &#061; ls_pauf<br \/>\n        testrun      &#061; &#039; &#039;.<\/p>\n<p>    IF sy-subrc &#061; 0.<br \/>\n      lv_success &#061; lv_success &#043; 1.<br \/>\n    ENDIF.<\/p>\n<p>  ENDLOOP.<\/p>\n<p>  COMMIT WORK.<\/p>\n<p>  cv_st-status  &#061; &#039;S&#039;.<br \/>\n  cv_st-message &#061; |\u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97\u5b8c\u6210&#xff1a;{ lv_success } \u6761|.<br \/>\n  GET TIME STAMP FIELD cv_st-end_ts.<\/p>\n<p>ENDFORM.<\/p>\n<p>&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n&#034; Step 5&#xff1a;\u5dee\u5f02\u62a5\u8868 &#043; \u4e00\u81f4\u6027\u6821\u9a8c<br \/>\n&#034;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nFORM step_variance_report<br \/>\n  USING   iv_period TYPE char6<br \/>\n          iv_kokrs  TYPE kokrs<br \/>\n          iv_dry    TYPE flag<br \/>\n          iv_email  TYPE adr6-smtp_addr<br \/>\n  CHANGING cv_st    TYPE ty_step_status.<\/p>\n<p>  cv_st-step_num  &#061; 5.<br \/>\n  cv_st-step_name &#061; &#039;\u5dee\u5f02\u62a5\u8868 &#043; \u4e00\u81f4\u6027\u6821\u9a8c&#039;.<br \/>\n  GET TIME STAMP FIELD cv_st-start_ts.<\/p>\n<p>  &#034; \u8c03\u7528\u5dee\u5f02\u5206\u6790\u62a5\u8868<br \/>\n  PERFORM run_variance_report<br \/>\n    USING iv_period iv_kokrs iv_email.<\/p>\n<p>  cv_st-status  &#061; &#039;S&#039;.<br \/>\n  cv_st-message &#061; &#039;\u5dee\u5f02\u62a5\u8868 &#043; \u6821\u9a8c\u5b8c\u6210&#039;.<br \/>\n  GET TIME STAMP FIELD cv_st-end_ts.<\/p>\n<p>ENDFORM.<\/p>\n<p>\u26a0\ufe0f \u5173\u952e\u4fee\u6b63&#xff1a;<\/p>\n<li>\u6d88\u606f\u7c7b\u7edf\u4e00\u4e3a ZFI_ENH\u3002<\/li>\n<li>timestampl_current( ) \u6539\u4e3a GET TIME STAMP FIELD\u3002<\/li>\n<li>BAPI_ORDER_SETTLE \/ BAPI_PRODORDER_SETTLE \u53c2\u6570\u8c03\u6574&#xff0c;\u5b9e\u9645 BAPI \u540d\u53ef\u80fd\u4e3a BAPI_ORDER_SETTLE \u6216 BAPI_PRODORD_SETTLE&#xff0c;\u9700\u6309\u7cfb\u7edf\u786e\u8ba4\u3002<\/li>\n<li>SELECT SINGLE \u52a0 &#064; \u8f6c\u4e49\u3002<\/li>\n<li>RKLS_PREISWERTUNG \u548c RKSS_KOSTENVERTEILUNG \u662f SAP \u6807\u51c6\u51fd\u6570&#xff0c;\u5b9e\u9645\u53c2\u6570\u53ef\u80fd\u4e0d\u540c\u3002<\/li>\n<hr \/>\n<h3>\u516d\u3001FI vs CO \u5168\u94fe\u8def\u5bf9\u7167&#xff08;\u4ece\u7b2c\u56db\u5341\u4e09\u7bc7\u5230\u672c\u7bc7&#xff09;<\/h3>\n<table>\n<tr>\u7ef4\u5ea6FI \u8d22\u52a1\u4f1a\u8ba1&#xff08;43-46 \u7bc7&#xff09;CO \u6210\u672c\u63a7\u5236&#xff08;\u672c\u7bc7&#xff09;\u6838\u5fc3\u5dee\u5f02<\/tr>\n<tbody>\n<tr>\n<td>\u6838\u5fc3 BAdI<\/td>\n<td>FAGL_POSTING_BADI_50<\/td>\n<td>BADI_ORDER_CK_COST \/ BADI_CONF_COSTS<\/td>\n<td>FI \u8fc7\u8d26 vs CO \u5f52\u96c6<\/td>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3\u5bf9\u8c61<\/td>\n<td>\u4f1a\u8ba1\u79d1\u76ee&#xff08;SAKNR&#xff09;<\/td>\n<td>\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355<\/td>\n<td>\u79d1\u76ee vs \u5bf9\u8c61<\/td>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3\u8868<\/td>\n<td>BKPF\/BSEG<\/td>\n<td>COSPC\/COSTE\/AUFK<\/td>\n<td>\u51ed\u8bc1 vs \u5f52\u96c6<\/td>\n<\/tr>\n<tr>\n<td>\u81ea\u52a8\u9a71\u52a8<\/td>\n<td>FI\u2192CO&#xff08;\u5355\u5411&#xff09;<\/td>\n<td>CO\u2192FI&#xff08;\u7ed3\u7b97\u5230\u5e93\u5b58\/\u8d39\u7528&#xff09;<\/td>\n<td>\u5355\u5411 vs \u53cc\u5411<\/td>\n<\/tr>\n<tr>\n<td>\u914d\u7f6e\u8868<\/td>\n<td>ZT_FI_*<\/td>\n<td>ZT_COST_*<\/td>\n<td>FI vs CO \u524d\u7f00<\/td>\n<\/tr>\n<tr>\n<td>\u6708\u7ed3<\/td>\n<td>\u4f1a\u8ba1\u671f\u95f4\u5173\u95ed&#xff08;OB52&#xff09;<\/td>\n<td>\u6210\u672c\u6708\u7ed3&#xff08;KSV5\/KO88\/KK88&#xff09;<\/td>\n<td>\u8d22\u52a1\u6708\u7ed3 vs \u6210\u672c\u6708\u7ed3<\/td>\n<\/tr>\n<tr>\n<td>\u9884\u7b97\u7ba1\u63a7<\/td>\n<td>ZT_FI_AMOUNT_AUTH&#xff08;\u7528\u6237\u91d1\u989d&#xff09;<\/td>\n<td>ZT_INTERNAL_ORDER_CONFIG&#xff08;\u8ba2\u5355\u9884\u7b97&#xff09;<\/td>\n<td>\u7528\u6237\u7ea7 vs \u5bf9\u8c61\u7ea7<\/td>\n<\/tr>\n<tr>\n<td>\u5dee\u5f02\u5206\u6790<\/td>\n<td>FI \u5c42\u9762\u65e0\u5dee\u5f02&#xff08;\u8bb0\u8d26\u5373\u786e\u5b9a&#xff09;<\/td>\n<td>\u6807\u51c6 vs \u5b9e\u9645\u6210\u672c\u5dee\u5f02\u5206\u6790<\/td>\n<td>\u5dee\u5f02\u662f CO \u72ec\u6709\u573a\u666f<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h3>\u4e03\u3001\u5e38\u89c1\u95ee\u9898\u4e0e\u6392\u67e5<\/h3>\n<ul>\n<li>\n<p>Q1&#xff1a;FI \u8fc7\u8d26\u65f6 SAP \u81ea\u52a8\u5199 CO \u7684\u673a\u5236\u662f\u600e\u6837\u7684&#xff1f;<\/p>\n<p>A&#xff1a;SAP \u6807\u51c6\u81ea\u52a8\u89e6\u53d1&#xff0c;ABAP \u5c42\u900f\u660e\u3002FI \u51ed\u8bc1\u8fc7\u8d26\u65f6&#xff1a;\u2460BSEG \u884c\u9879\u76ee\u91cc\u5982\u679c\u586b\u4e86 KOSTL&#xff08;\u6210\u672c\u4e2d\u5fc3&#xff09;\u3001AUFNR&#xff08;\u8ba2\u5355&#xff09;\u3001PRCTR&#xff08;\u5229\u6da6\u4e2d\u5fc3&#xff09;\u4efb\u4e00\u6210\u672c\u5bf9\u8c61&#xff1b;\u2461SAP \u81ea\u52a8\u6839\u636e KONK&#xff08;FI\/CO \u81ea\u52a8\u8fc7\u8d26\u914d\u7f6e&#xff09; \u786e\u5b9a\u5bf9\u5e94\u7684 \u6210\u672c\u8981\u7d20&#xff08;KSTAR&#xff09;&#xff1b;\u2462\u81ea\u52a8\u5199\u5165 CO \u7684 COSPC\/AUFK\/COSTE \u8868\u3002\u7b2c\u56db\u5341\u4e09\u7bc7 FAGL_ITEMS_SUBSTITUTION \u91cc\u81ea\u52a8\u6d3e\u751f KOSTL\/PRCTR \u7684\u903b\u8f91&#xff0c;\u5c31\u662f\u9a71\u52a8 FI\u2192CO \u7684\u5165\u53e3\u2014\u2014\u6d3e\u751f\u5f97\u51c6&#xff0c;CO \u7684\u6570\u5c31\u51c6\u3002<\/p>\n<\/li>\n<li>\n<p>Q2&#xff1a;\u6210\u672c\u5206\u644a\u5faa\u73af\u7684 OKGA \u6807\u51c6\u548c ZT_COST_ALLOCATION_RULE \u81ea\u5b9a\u4e49\u600e\u4e48\u9009&#xff1f;<\/p>\n<p>A&#xff1a;OKGA \u6807\u51c6\u591f\u7528\u5c31\u7528\u6807\u51c6&#xff0c;\u4e0d\u591f\u5c31\u81ea\u5b9a\u4e49\u3002OKGA \u6807\u51c6\u5206\u644a\u5faa\u73af&#xff1a;\u2460KSV5&#xff08;\u5206\u914d\u5faa\u73af&#xff09;\u2014\u2014\u9002\u5408\u7b80\u5355\u7684\u6bd4\u4f8b\u5206\u644a&#xff08;\u6309\u6bd4\u4f8b\/\u6309\u7edf\u8ba1\u6307\u6807\/\u6309\u56fa\u5b9a\u91d1\u989d&#xff09;&#xff1b;\u2461KSW5&#xff08;\u5206\u644a\u5faa\u73af&#xff09;\u2014\u2014\u53ef\u4ee5\u5206\u644a\u8f85\u52a9\u6210\u672c\u4e2d\u5fc3\u7684\u5168\u90e8\u4f59\u989d&#xff1b;\u2462\u7f3a\u70b9\u662f\u4e0d\u80fd\u8de8\u5206\u644a\u5faa\u73af\u7075\u6d3b\u7ec4\u5408&#xff08;\u6bd4\u5982\u98df\u5802\u6210\u672c\u6309\u4eba\u6570\u3001IT \u6210\u672c\u6309\u7528\u6237\u6570\u3001\u540c\u65f6\u5728\u4e00\u4e2a\u5468\u671f\u5185\u6267\u884c&#xff09;\u3002ZT_COST_ALLOCATION_RULE \u81ea\u5b9a\u4e49\u8868 &#043; Z_COST_ALLOCATION_JOB \u5c31\u662f\u4e3a\u4e86\u8986\u76d6 OKGA \u505a\u4e0d\u5230\u7684\u573a\u666f\u2014\u2014\u7075\u6d3b\u914d\u7f6e\u3001\u7075\u6d3b\u7ec4\u5408\u3001\u53ef\u4ee5\u6309\u81ea\u5b9a\u4e49\u7edf\u8ba1\u6307\u6807\u3002<\/p>\n<\/li>\n<li>\n<p>Q3&#xff1a;\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u201c\u8d85\u652f\u62e6\u622a\u201d\u548c\u201c\u9884\u8b66\u201d\u7684 SAP \u6807\u51c6\u673a\u5236\u662f\u4ec0\u4e48&#xff1f;<\/p>\n<p>A&#xff1a;SAP \u6709\u6807\u51c6\u673a\u5236&#xff0c;\u4f46\u4e0d\u7075\u6d3b\u3002\u2460OKKO \u8ba2\u5355\u7c7b\u578b\u914d\u7f6e\u2014\u2014\u53ef\u4ee5\u8bbe\u9884\u7b97\u7ba1\u7406&#xff08;Active Availability Control&#xff09;\u548c\u9608\u503c&#xff1b;\u2461\u6807\u51c6\u673a\u5236\u5728 KO88 \u7ed3\u7b97\u65f6\u81ea\u52a8\u68c0\u67e5&#xff0c;\u8d85\u652f\u4f1a\u62a5\u9519\u3002\u4f46 SAP \u6807\u51c6\u7684\u9884\u8b66\u53ea\u6709\u4e00\u79cd\u6a21\u5f0f&#xff08;\u786c\u62e6\u622a&#xff09;&#xff0c;\u4e0d\u652f\u6301\u5206\u7ea7\u9884\u8b66&#xff08;90% \u90ae\u4ef6\/100% \u62e6\u622a\/\u9700\u8981\u5ba1\u6279\u7684\u4e2d\u95f4\u6001&#xff09;\u3002\u672c\u7bc7\u7684 ZT_INTERNAL_ORDER_CONFIG &#043; FAGL_POSTING_BADI_50 \u5b9e\u73b0\u4e86\u4e09\u7ea7\u7ba1\u63a7\u2014\u201490% \u9884\u8b66 &#043; BCS \u90ae\u4ef6\u3001100% \u786c\u62e6\u622a\u3001\u4e2d\u95f4\u6001\u5ba1\u6279&#xff0c;\u66f4\u7075\u6d3b\u3002<\/p>\n<\/li>\n<li>\n<p>Q4&#xff1a;\u751f\u4ea7\u8ba2\u5355\u5dee\u5f02\u5206\u6790\u201c\u4ef7\u683c\u5dee\u5f02\u201d\u548c\u201c\u6570\u91cf\u5dee\u5f02\u201d\u600e\u4e48\u533a\u5206&#xff1f;<\/p>\n<p>A&#xff1a;SAP \u6807\u51c6\u533a\u5206\u5f97\u5f88\u6e05\u695a\u3002\u4ef7\u683c\u5dee\u5f02&#xff08;Price Variance&#xff09;\u2014\u2014\u5b9e\u9645\u91c7\u8d2d\u4ef7 vs \u6807\u51c6\u4ef7\u683c\u7684\u5dee\u989d&#xff0c;\u5f52\u56e0\u5230\u91c7\u8d2d\u90e8\u95e8&#xff1b;\u6570\u91cf\u5dee\u5f02&#xff08;Quantity Variance&#xff09;\u2014\u2014\u5b9e\u9645\u7528\u91cf vs \u6807\u51c6\u7528\u91cf\u7684\u5dee\u989d&#xff0c;\u5f52\u56e0\u5230\u751f\u4ea7\u90e8\u95e8&#xff1b;\u6df7\u5408\u5dee\u5f02\u2014\u2014\u5b9e\u9645\u4ea7\u54c1\u7ec4\u5408 vs \u6807\u51c6\u4ea7\u54c1\u7ec4\u5408\u3002\u6807\u51c6\u6210\u672c\u6838\u7b97\u4e8b\u52a1\u7801 CKMLCP \u8dd1\u5b8c\u540e&#xff0c;SAP \u81ea\u52a8\u628a\u5dee\u5f02\u5206\u7c7b\u5b58\u5230 CKMV \u8868&#xff0c;\u672c\u7bc7\u7684 Z_COST_VARIANCE_REPORT \u5c31\u662f\u4ece CKIS&#xff08;\u6807\u51c6&#xff09;&#043; COSPC&#xff08;\u5b9e\u9645&#xff09;\u53cd\u7b97\u5dee\u5f02&#xff0c;\u66f4\u7b80\u5316\u3002<\/p>\n<\/li>\n<li>\n<p>Q5&#xff1a;\u6210\u672c\u6708\u7ed3\u7684\u6b65\u9aa4\u987a\u5e8f\u80fd\u4e71\u5417&#xff1f;<\/p>\n<p>A&#xff1a;\u7edd\u5bf9\u4e0d\u80fd\u4e71&#xff01; \u63a8\u8350\u987a\u5e8f&#xff1a;\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97 \u2192 \u6210\u672c\u5206\u644a \u2192 \u5185\u90e8\u8ba2\u5355\u7ed3\u7b97 \u2192 \u751f\u4ea7\u8ba2\u5355\u7ed3\u7b97 \u2192 \u5dee\u5f02\u62a5\u8868\u3002\u539f\u56e0&#xff1a;\u2460\u4f5c\u4e1a\u4ef7\u683c\u91cd\u7b97\u662f\u6210\u672c\u5206\u644a\u7684\u8f93\u5165&#xff08;\u5148\u7b97\u4f5c\u4e1a\u4ef7\u683c\u624d\u80fd\u5206\u644a&#xff09;&#xff1b;\u2461\u6210\u672c\u5206\u644a\u5b8c\u5185\u90e8\u8ba2\u5355\u624d\u6709\u6700\u7ec8\u4f59\u989d&#xff08;\u5148\u5206\u644a\u518d\u7ed3\u7b97\u624d\u51c6\u786e&#xff09;&#xff1b;\u2462\u5185\u90e8\u8ba2\u5355\u7ed3\u7b97\u5b8c\u751f\u4ea7\u8ba2\u5355\u624d\u4e0d\u4f1a\u91cd\u590d\u5f52\u96c6&#xff08;\u5148\u7ed3\u5185\u90e8\u8ba2\u5355\u518d\u7ed3\u751f\u4ea7\u8ba2\u5355&#xff09;&#xff1b;\u2463\u5dee\u5f02\u62a5\u8868\u8981\u7b49\u6240\u6709\u7ed3\u7b97\u5b8c\u6210\u540e\u624d\u5b8c\u6574\u3002\u672c\u7bc7\u7684 Z_COST_MONTHLY_CLOSE \u6309\u4e25\u683c\u987a\u5e8f\u4e32\u8d77&#xff0c;\u4efb\u4f55\u4e00\u6b65\u5931\u8d25\u90fd\u4f1a\u4e2d\u65ad\u540e\u7eed\u3002<\/p>\n<\/li>\n<li>\n<p>Q6&#xff1a;FI \u548c CO \u6570\u636e\u4e0d\u4e00\u81f4\u600e\u4e48\u6392\u67e5&#xff1f;<\/p>\n<p>A&#xff1a;\u4e09\u6b65\u8d70\u3002\u2460\u68c0\u67e5 FI\u2192CO \u81ea\u52a8\u8fc7\u8d26\u914d\u7f6e&#xff08;\u4e8b\u52a1\u7801 OK17&#xff09;\u2014\u2014FI \u7684\u54ea\u4e2a\u79d1\u76ee\u5bf9\u5e94 CO \u7684\u54ea\u4e2a\u6210\u672c\u8981\u7d20&#xff08;KSTAR&#xff09;&#xff1b;\u2461\u6bd4\u8f83\u540c\u671f\u6570\u636e\u2014\u2014FI \u79d1\u76ee\u4f59\u989d&#xff08;G\/L view&#xff09;vs CO \u6210\u672c\u4e2d\u5fc3\u4f59\u989d&#xff08;KS02&#xff09;&#xff0c;\u770b\u5dee\u5728\u54ea&#xff1b;\u2462\u67e5 COSPL \u8868\u2014\u2014\u627e\u5230\u54ea\u7b14\u8fc7\u8d26\u5bfc\u81f4\u5dee\u5f02&#xff0c;\u53cd\u67e5\u539f\u59cb FI \u51ed\u8bc1\u3002\u7b2c\u56db\u5341\u4e09\u7bc7 FAGL_POSTING_BADI_50 \u5982\u679c\u6709\u81ea\u5b9a\u4e49\u903b\u8f91\u8df3\u8fc7\u6210\u672c\u5bf9\u8c61&#xff0c;\u4e5f\u4f1a\u5bfc\u81f4 FI\/CO \u4e0d\u4e00\u81f4&#xff0c;\u8981\u68c0\u67e5\u6709\u6ca1\u6709 IF \u5206\u652f\u6ca1\u7ed9 KOSTL \u8d4b\u503c\u3002<\/p>\n<\/li>\n<\/ul>\n<hr \/>\n<h3>\u603b\u7ed3<\/h3>\n<h4>\u6210\u672c\u63a7\u5236\u56db\u5927\u573a\u666f\u901f\u67e5<\/h4>\n<table>\n<tr>\u573a\u666f\u6280\u672f\u6808\u6838\u5fc3 BAdI\/BAPI\u914d\u7f6e\u8868<\/tr>\n<tbody>\n<tr>\n<td>\u6210\u672c\u5206\u644a<\/td>\n<td>Z_COST_ALLOCATION_JOB &#043; COSPC &#043; COSTE<\/td>\n<td>RKSS_KOSTENVERTEILUNG &#043; BAPI_ACC_DOCUMENT_POST<\/td>\n<td>ZT_COST_ALLOCATION_RULE<\/td>\n<\/tr>\n<tr>\n<td>\u5185\u90e8\u8ba2\u5355\u9884\u7b97<\/td>\n<td>FAGL_POSTING_BADI_50 &#043; AUFK2 &#043; BCS<\/td>\n<td>BAPI_BUDGET_ALLOCATION<\/td>\n<td>ZT_INTERNAL_ORDER_CONFIG<\/td>\n<\/tr>\n<tr>\n<td>\u751f\u4ea7\u8ba2\u5355\u5dee\u5f02<\/td>\n<td>BADI_CONF_COSTS &#043; CKIS &#043; COSPC<\/td>\n<td>BAPI_PRODORDER_SETTLE<\/td>\n<td>ZT_COST_VARIANCE_CONFIG<\/td>\n<\/tr>\n<tr>\n<td>\u6708\u7ed3\u7a0b\u5e8f<\/td>\n<td>Z_COST_MONTHLY_CLOSE &#043; 6 \u6b65\u9aa4\u6d41\u7a0b<\/td>\n<td>RKLS_PREISWERTUNG &#043; RKSS_KOSTENVERTEILUNG &#043; BAPI_ORDER_SETTLE<\/td>\n<td>&#8211;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>FI vs CO \u5168\u94fe\u8def\u5bf9\u7167<\/h4>\n<table>\n<tr>\u7ef4\u5ea6FI&#xff08;43-46 \u7bc7&#xff09;CO&#xff08;\u672c\u7bc7&#xff09;<\/tr>\n<tbody>\n<tr>\n<td>\u6838\u5fc3 BAdI<\/td>\n<td>FAGL_POSTING_BADI_50<\/td>\n<td>BADI_ORDER_CK_COST \/ BADI_CONF_COSTS<\/td>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3\u5bf9\u8c61<\/td>\n<td>\u4f1a\u8ba1\u79d1\u76ee<\/td>\n<td>\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355<\/td>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3\u8868<\/td>\n<td>BKPF\/BSEG<\/td>\n<td>COSPC\/COSTE\/AUFK<\/td>\n<\/tr>\n<tr>\n<td>\u9a71\u52a8\u65b9\u5411<\/td>\n<td>FI\u2192CO&#xff08;\u5355\u5411\u81ea\u52a8&#xff09;<\/td>\n<td>CO\u2192FI&#xff08;\u7ed3\u7b97\u5230\u5e93\u5b58&#xff09;<\/td>\n<\/tr>\n<tr>\n<td>\u6708\u7ed3<\/td>\n<td>OB52 \u671f\u95f4\u5173\u95ed<\/td>\n<td>KSV5\/KO88\/KK88 \u6210\u672c\u6708\u7ed3<\/td>\n<\/tr>\n<tr>\n<td>\u72ec\u6709\u573a\u666f<\/td>\n<td>\u574f\u8d26\u51c6\u5907\/\u5bf9\u8d26\u51fd<\/td>\n<td>\u5dee\u5f02\u5206\u6790\/\u4f5c\u4e1a\u4ef7\u683c\/\u5206\u644a\u5faa\u73af<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>\u672c\u7bc7\u4e0e\u4e0b\u4e00\u7bc7\u7684\u8854\u63a5<\/h4>\n<table>\n<tr>\u672c\u7bc7&#xff08;\u6210\u672c\u63a7\u5236&#xff09;\u4e0b\u4e00\u7bc7&#xff08;\u8d44\u4ea7\u6298\u65e7\u5f00\u53d1&#xff09;<\/tr>\n<tbody>\n<tr>\n<td>AUFK \u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355<\/td>\n<td>ANLA \u8d44\u4ea7\u4e3b\u6570\u636e<\/td>\n<\/tr>\n<tr>\n<td>COSPC \u5b9e\u9645\u6210\u672c<\/td>\n<td>ANLP \u6298\u65e7\u8ba1\u5212<\/td>\n<\/tr>\n<tr>\n<td>\u6210\u672c\u4e2d\u5fc3\u5206\u644a<\/td>\n<td>\u8d44\u4ea7\u6210\u672c\u4e2d\u5fc3\u5f52\u96c6<\/td>\n<\/tr>\n<tr>\n<td>KK88 \u8ba2\u5355\u7ed3\u7b97<\/td>\n<td>AIAB \u8d44\u4ea7\u7ed3\u7b97<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<p>FICO \u6a21\u5757 8 \u7bc7\u5f00\u53d1\u7b2c\u516d\u7bc7\u9884\u544a&#xff1a;\u300aFICO \u6a21\u5757\u8d44\u4ea7\u6298\u65e7\u5f00\u53d1&#xff1a;\u6298\u65e7\u89c4\u5219\u589e\u5f3a\u3001\u8d44\u4ea7\u4e3b\u6570\u636e\u6269\u5c55\u4e0e\u81ea\u52a8\u76d8\u70b9\u5b9e\u73b0\u300b\u2014\u2014FICO \u8d44\u4ea7\u7bc7\u3002\u8bb2\u89e3\u56fa\u5b9a\u8d44\u4ea7\u6298\u65e7\u89c4\u5219\u589e\u5f3a&#xff08;\u53cc\u500d\u4f59\u989d\u9012\u51cf\u6cd5\/\u5e74\u6570\u603b\u548c\u6cd5\u81ea\u5b9a\u4e49\u903b\u8f91&#xff09;\u3001\u8d44\u4ea7\u4e3b\u6570\u636e CI_ANLA \u5b57\u6bb5\u6269\u5c55\u3001\u8d44\u4ea7\u76d8\u70b9\u62a5\u8868\u3001\u6298\u65e7\u8fc7\u8d26\u81ea\u52a8\u7a0b\u5e8f\u7684\u5b8c\u6574\u65b9\u6848&#xff0c;\u9644\u201c\u8d44\u4ea7\u4e2d\u9014\u62a5\u5e9f\u81ea\u52a8\u7ed3\u8f6c\u201d\u201c\u6298\u65e7\u671f\u95f4\u8de8\u6708\u8c03\u6574\u201d\u201c\u8d44\u4ea7\u76d8\u70b9\u5dee\u5f02\u81ea\u52a8\u751f\u6210\u8c03\u6574\u51ed\u8bc1\u201d\u7684\u53ef\u590d\u7528\u4ee3\u7801\u3002<\/p>\n<p>\u4f5c\u8005&#xff1a;\u7231\u559d\u6c34\u7684\u9c7c\u4e36<br \/>\n\u7248\u672c\u8bb0\u5f55&#xff1a;2026 \u5e74 10 \u6708<\/p>\n<p>&#x1f4ac; \u6210\u672c\u5206\u644a\u5faa\u73af\u4f60\u4eec\u7528 SAP \u6807\u51c6 OKGA \u8fd8\u662f\u81ea\u5efa&#xff1f;\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u8d85\u652f\u662f\u786c\u62e6\u622a\u8fd8\u662f\u9884\u8b66&#xff1f;\u751f\u4ea7\u8ba2\u5355\u5dee\u5f02\u662f\u505a SAP \u6807\u51c6 CKIS \u8fd8\u662f\u81ea\u5efa\u62a5\u8868&#xff1f;\u6708\u7ed3\u662f\u624b\u52a8\u8dd1\u4e8b\u52a1\u7801\u8fd8\u662f\u7528\u6279\u91cf Job&#xff1f;\u6b22\u8fce\u5206\u4eab\u4f60\u7684\u6210\u672c\u63a7\u5236\u5f00\u53d1\u7ecf\u9a8c\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>FICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1&#xff1a;\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0\u535a\u5ba2\u7b80\u4ecb&#xff1a;\u9488\u5bf9\u6210\u672c\u6838\u7b97\u7ba1\u7406\u9700\u6c42&#xff0c;\u8bb2\u89e3\u6210\u672c\u4e2d\u5fc3\u8d39\u7528\u5f52\u96c6\u5206\u914d\u903b\u8f91\u5f00\u53d1\u3001\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u7ba1\u63a7\u589e\u5f3a\u5f00\u53d1\u3001\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u4e0e\u5dee\u5f02\u5206\u6790\u903b\u8f91\u5f00\u53d1\u3001\u6210\u672c\u6708\u7ed3\u81ea\u52a8\u7a0b\u5e8f\u5f00\u53d1\u7684\u65b9\u6cd5&#xff0c;\u9644\u201c\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u8d85\u652f\u81ea\u52a8\u62e6\u622a\u201d\u201c\u4f5c\u4e1a\u6210\u672c\u81ea\u52a8\u5206\u914d\u201d\u201c\u6210\u672c\u5dee\u5f02\u81ea\u52a8\u7ed3\u8f6c\u201d\u7684\u5b9e\u73b0\u4ee3\u7801&#xff0c;\u63d0\u5347\u6210\u672c\u6838\u7b97\u6548\u7387\u4e0e\u6570\u636e\u51c6\u786e\u6027\u3002\u201c\u7b2c\u56db\u5341\u516d\u7bc7\u8bb2\u4e86\u5e94\u6536\u8d26\u6b3e&#xff0c;\u672c\u7bc7\u8f6e\u5230 FICO \u6210\u672c\u63a7\u5236\u6838<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[12392,13065,13066,2348,4511,56],"topic":[],"class_list":["post-114827","post","type-post","status-publish","format-standard","hentry","category-server","tag-12392","tag-13065","tag-13066","tag-abap","tag-sap","tag-56"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.wsisp.com\/helps\/114827.html\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"og:description\" content=\"FICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1&#xff1a;\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0\u535a\u5ba2\u7b80\u4ecb&#xff1a;\u9488\u5bf9\u6210\u672c\u6838\u7b97\u7ba1\u7406\u9700\u6c42&#xff0c;\u8bb2\u89e3\u6210\u672c\u4e2d\u5fc3\u8d39\u7528\u5f52\u96c6\u5206\u914d\u903b\u8f91\u5f00\u53d1\u3001\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u7ba1\u63a7\u589e\u5f3a\u5f00\u53d1\u3001\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u4e0e\u5dee\u5f02\u5206\u6790\u903b\u8f91\u5f00\u53d1\u3001\u6210\u672c\u6708\u7ed3\u81ea\u52a8\u7a0b\u5e8f\u5f00\u53d1\u7684\u65b9\u6cd5&#xff0c;\u9644\u201c\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u8d85\u652f\u81ea\u52a8\u62e6\u622a\u201d\u201c\u4f5c\u4e1a\u6210\u672c\u81ea\u52a8\u5206\u914d\u201d\u201c\u6210\u672c\u5dee\u5f02\u81ea\u52a8\u7ed3\u8f6c\u201d\u7684\u5b9e\u73b0\u4ee3\u7801&#xff0c;\u63d0\u5347\u6210\u672c\u6838\u7b97\u6548\u7387\u4e0e\u6570\u636e\u51c6\u786e\u6027\u3002\u201c\u7b2c\u56db\u5341\u516d\u7bc7\u8bb2\u4e86\u5e94\u6536\u8d26\u6b3e&#xff0c;\u672c\u7bc7\u8f6e\u5230 FICO \u6210\u672c\u63a7\u5236\u6838\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.wsisp.com\/helps\/114827.html\" \/>\n<meta property=\"og:site_name\" content=\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-10T02:09:29+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"28 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/114827.html\",\"url\":\"https:\/\/www.wsisp.com\/helps\/114827.html\",\"name\":\"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"isPartOf\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\"},\"datePublished\":\"2026-10-10T02:09:29+00:00\",\"dateModified\":\"2026-10-10T02:09:29+00:00\",\"author\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/114827.html#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.wsisp.com\/helps\/114827.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/114827.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.wsisp.com\/helps\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\",\"url\":\"https:\/\/www.wsisp.com\/helps\/\",\"name\":\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"description\":\"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"contentUrl\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"caption\":\"admin\"},\"sameAs\":[\"http:\/\/wp.wsisp.com\"],\"url\":\"https:\/\/www.wsisp.com\/helps\/author\/admin\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.wsisp.com\/helps\/114827.html","og_locale":"zh_CN","og_type":"article","og_title":"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","og_description":"FICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1&#xff1a;\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0\u535a\u5ba2\u7b80\u4ecb&#xff1a;\u9488\u5bf9\u6210\u672c\u6838\u7b97\u7ba1\u7406\u9700\u6c42&#xff0c;\u8bb2\u89e3\u6210\u672c\u4e2d\u5fc3\u8d39\u7528\u5f52\u96c6\u5206\u914d\u903b\u8f91\u5f00\u53d1\u3001\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u7ba1\u63a7\u589e\u5f3a\u5f00\u53d1\u3001\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u4e0e\u5dee\u5f02\u5206\u6790\u903b\u8f91\u5f00\u53d1\u3001\u6210\u672c\u6708\u7ed3\u81ea\u52a8\u7a0b\u5e8f\u5f00\u53d1\u7684\u65b9\u6cd5&#xff0c;\u9644\u201c\u5185\u90e8\u8ba2\u5355\u9884\u7b97\u8d85\u652f\u81ea\u52a8\u62e6\u622a\u201d\u201c\u4f5c\u4e1a\u6210\u672c\u81ea\u52a8\u5206\u914d\u201d\u201c\u6210\u672c\u5dee\u5f02\u81ea\u52a8\u7ed3\u8f6c\u201d\u7684\u5b9e\u73b0\u4ee3\u7801&#xff0c;\u63d0\u5347\u6210\u672c\u6838\u7b97\u6548\u7387\u4e0e\u6570\u636e\u51c6\u786e\u6027\u3002\u201c\u7b2c\u56db\u5341\u516d\u7bc7\u8bb2\u4e86\u5e94\u6536\u8d26\u6b3e&#xff0c;\u672c\u7bc7\u8f6e\u5230 FICO \u6210\u672c\u63a7\u5236\u6838","og_url":"https:\/\/www.wsisp.com\/helps\/114827.html","og_site_name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","article_published_time":"2026-10-10T02:09:29+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"admin","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"28 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.wsisp.com\/helps\/114827.html","url":"https:\/\/www.wsisp.com\/helps\/114827.html","name":"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","isPartOf":{"@id":"https:\/\/www.wsisp.com\/helps\/#website"},"datePublished":"2026-10-10T02:09:29+00:00","dateModified":"2026-10-10T02:09:29+00:00","author":{"@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41"},"breadcrumb":{"@id":"https:\/\/www.wsisp.com\/helps\/114827.html#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.wsisp.com\/helps\/114827.html"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.wsisp.com\/helps\/114827.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.wsisp.com\/helps"},{"@type":"ListItem","position":2,"name":"SAP-ABAP\uff1aFICO \u6a21\u5757\u6210\u672c\u63a7\u5236\u5f00\u53d1\uff1a\u6210\u672c\u4e2d\u5fc3\/\u5185\u90e8\u8ba2\u5355\/\u751f\u4ea7\u8ba2\u5355\u6210\u672c\u6838\u7b97\u903b\u8f91\u5b9e\u73b0"}]},{"@type":"WebSite","@id":"https:\/\/www.wsisp.com\/helps\/#website","url":"https:\/\/www.wsisp.com\/helps\/","name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","description":"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41","name":"admin","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/","url":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","contentUrl":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","caption":"admin"},"sameAs":["http:\/\/wp.wsisp.com"],"url":"https:\/\/www.wsisp.com\/helps\/author\/admin"}]}},"_links":{"self":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/114827","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/comments?post=114827"}],"version-history":[{"count":0,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/114827\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/media?parent=114827"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/categories?post=114827"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/tags?post=114827"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/topic?post=114827"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}