Ceppek's

Adventures,friends,love,life,art, IT geeks, photography


Leave a comment

BPC : Debug Package Manager

Untuk urusa debug package manager ini sangat penting ketika melakukan testing program dan melakukan checking apa yang sedang terjadi di dalamnya.

caranya :

  1. Tcode Se80
  2. buka class/ interface –> CL_UJXD_PACKAGES_RES
  3. methode –> Redefinition –> Do_Post

ke line 179 dan kasih external debug

debug bpc 1

debug bpc 2

selanjutnya ubah variable di atas jadi X

dan lanjutkan prosesnya seperti debug program pada umumnya.


Leave a comment

BPC 10 – New feel

SAP BPC (Business Planning and Consolidation) itu hasil dari akusisi outlooksoft yang di akuisisi oleh SAP seperti yang saya kutip dari sini, kemudian di buatlah dua versi, ada versi microsoft dan versi Netweaver, untuk kedua versi tersebut tidak banyak perbedaan dari sisi user, tetapi berbeda dari segi back-end, yang versi Microsoft di bangun atas dasar technology Microsoft  jadi ada database server dan webservernya, serta tidak lupa add in untuk client yang bisa nempek di excel,word dan powerpoint. untuk versi netweaver, dia di bangun atas dasar technology netweaver dan BW, jadi salah satu kelebihan dari SAP BPC Netweaver ini bisa narik data master langsung dari SAP melalui BW, dan tentu saja kecepatan prosesnya akan berbeda juga. untuk versi microsoft tentunya punya kelebihan juga, gak harus  punya SAP BW dulu untuk menjalankannya, cukup dengan menyediakan server dan di install serta jg lisensinya, untuk sumber data yang di olah bisa dari excel/csv atau text file, misal perusahaan anda sudah mempunyai sistem ERP selain SAP, tetapi data actualnya juga ingin di olah oleh BPC ini. tentu saja masing-masing dari dua versi ini mempunyai kekurangan dan kelebihan masing-masing, jika anda ingin mengimplementasikan di perusahaan anda, tentunya di sesuaikan dengan kebutuhan, anda bisa bertanya pada saya di email ceppek[at]gmail.com atau pada perusahaan konsultan SAP di Indonesia.

Untuk instalasi BPC 10 Netweaver ini, sebaiknya anda mengajak atau membajak orang basis yang ahli dalam install dan menginstall add-on atau modul di SAP, kecuali anda jago technical SAP juga 🙂

1.  Tampilan Baru (server)

BPC 10 NW Netweaver

BPC 10 Netweaver

untuk memulai membuka BPC 10 ini bisa langsung ke webnya, kemudian terlihat screennya sudah berbeda sekali dengan versi yang lama (7.5) terutama dari segi technolgynya, dari segi server sudah terbebas dari dotNet technology, artinya anda tidak perlu menginstall webserver dengan technologi .net seperti pada versi sebelumnya. tampak juga ada multiple tab yang bisa anda buka, misal, tab administrator untuk memodifikasi atau edit dimensi, kemudian ada tab lagi untuk membuat new input form dan seterusnya.  Jadi kita tidak perlu install applikasi admin consolenya seperti versi sebelumnya, untuk urusan administrasi bisa cukup di lakukan disini, misal nambah dimensi, edit member dimensi, add tim, edit tim dan lain-lain.

2. Client

BPC 10 Clien

BPC 10 Client

dari sisi client, namanya EPM add-in, sudah sangat berbeda dengan versi sebelumnya, dan banyak fungsi-fungsi yang sudah absolute alias tidak di pakai lagi. di sini dulu namanya CV atau Current View, sudah berganti menjadi EPM Content, kemudian posisinya ada di bawah toolbar, dan tentu saja yang paling mengagetkan adalah fungsi EVDRE yang di hilangkan di versi 10 ini, padahal, almost input sechedule atau report menggunakan EVDRE. dan tentu saja cara untuk membuat report dan input schedule/input form akan berbeda caranya dengan versi yang sebelumnya.

ada beberapa istilah yang berubah pada BPC 10 ini, misal seperti di bawah ini

SAPBPC diff


Leave a comment

SAP BPC Script – 4 – Dynamic Scooping

 

Ada kalanya kita membutuhkan untuk menyimpan data yang kita sudah ambil dalam scooping ke dalam variable, tapi bagaimana bila dimension membernya berubah setiap saat atau dengan kata lain dynamic?

Untuk mengatasi hal tersebut diatas bisa menggunakan command *SELECT dan *MEMBERSET

Untuk variable di definisikan sebagai dengan tanda persen “%” . contohnya  %MYTIME% , %CUR% dan lain-lain.  Jadi bagaimana kita bisa menyimpannya dalam variable?  Biasanya variable bisa di isi dengan menggunakan command *SELECT  dan *MEMBERSET. Kedua comman tersebut adalah command untuk scooping tetapi yang paling cepet adalah menggunakan *SELECT karena hal ini akan mencreate SQL Statement.

Untuk cara penulisannya adalah seperti berikut

                *SELECT (, {member set in MDX format})

Ok mari kita lihat bagaimana penggunaan command *SELECT

Contoh :                              

           *SELECT(%REPORTING_CURRENCIES%, “ID”, “CURRENCY”, “[GROUP] = ‘REP’”)

Perintah tersebut di atas akan menjalankan perintah untuk mendapatkan “Member ID(what)” dari dimensi Currency (from) dan property GROUP mempunyai value “REP” (Where).

Sebenarnya command tersebut di atas akan membuat sql command SELECT ID from mbrCurrency where [GROUP] = ‘REP’  

Setelah menjalankan sql comman di atas, hasilnya akan di simpan dalam variable %REPORTING_CURRENCIES%

 

 


Leave a comment

SAP BPC Script Logic 3 – Scooping menggunakan value member

SAP BPC Script Logic 3 – Scooping menggunakan value member

setelah pada tulisan berikutnya tentang scooping berdasarkan property member, selajuntnya adalah bisakah kalau scooping menggunakan value dari member? ya tentu bisa, menggunakan *XDIM_GETMEMBERSET.

penulisannya seperti berikut

*XDIM_GETMEMBERSET {dimension} [={member set}]

[*APP={application}] //optional

[*XDIM_MEMBERSET {dimension} [={member set}] //as many of these as needed

[*QUERY_TYPE= 0 | 1 | 2] //optional

*CRITERIA {expression} //required

*ENDXDIM

*XDIM_GETMEMBERSET P_CC=[P_CC].[H1].[AAPJ].CHILDREN

*APP=PLANNING

*XDIM_MEMBERSET P_DataSrc=INPUT

*CRITERIA [P_ACCT].[H1].[CE0001000]>1000

*ENDXDIM

pada syntax di atas, prosesnya akan seperti di bawah ini

  1. Children member dari AAPJ di dalam dimensi P_CC. dan
  2. dari applikasi PLANNING. dan
  3. member INPUT dari P_Datasrc. dan
  4. CE0001000 value membernya dari dimensi iP_ACCT harus lebih besar dari 100000

misalkan kita asumsikan

Image

Record mana yang akan di pilih?

Jawabannya adalah

CE0001000, 2011.JAN, ACTUAL, INPUT, KOREA, 2500

CE0001000, 2011.FEB, BUDGET, INPUT, CHINA, 1050


1 Comment

SAP BPC Script – 2 (Scooping menggunakan property dari member)

SAP BPC Script – 2 (Scooping menggunakan property dari member)

Pada tulisan sebelumnya kita sudah bahas 3 bagian dari sap bpc script logic yang meliputi, Scooping, calculation dan writing.
pada tulisan berikut ini masih membahas mengenai khususnya feature dari scooping lebih luas lagi yaitu Scooping menggunakan property dari member.

pada tulisan sebelumnya kita menggunakan *XDIM_MEMBERSET
*XDIM_MEMBERSET ini di gunakanan untuk melakukan scooping berdasarkan ID member, tapi bagaimana kalau kita mau melakukan scooping berdasarkan value property yang spesifik?
sebgai contohnnya : user mau memfilter account dimension member yang merupakan kategory asset. untuk melakukan hal tersebut, kita memerlukan property dari ACCTYPE yang merupakan type value dari account. misalkan valuenya adalah AST atau bisa ASET, tergantung bagaimana menulisnya pada member dimensi.
untuk melakukan scooping tersebut, bisa menggunakan *XDIM_FILTER.
penggunaannya seperti berikut :
*XDIM_FILTER = [DIMENSIONName].Properties(“Property name”) = “Property value”
dari syntax di atas bisa di tuliskan kira-kira seperti berikut :
*XDIM_FILTER ACCOUNT = [account].properties(ACCTYPE=’AST’)
misalkan sebagai contohnya, kita mempunyai 3 member seperti berikut
ID ACCTYPE
Extsales INC
CASH AST
TAXES EXP
NETINCOME INC
kemudian hasilnya adalah *XDIM_FILTER_ACCOUNT akan mengambil hanya CASH.
mari kita asumsikan jika sebelumnya kita sudah memakai lebih dari satu command *XDIM_MEMBERSET dan di bawah ini adalah hasil seleksi dari fact table.

*XDIM_MEMBERSET TIME = 2011.JAN
*XDIM_MEMBERSET CATEGORY = BUDGET

EXTSALES , 2011.JAN, BUDGET, 9000
CASH , 2011.JAN, BUDGET, 3000
TAXES , 2011.JAN, BUDGET, 800
NETINCOME , 2011.JAN, BUDGET, 1500

sekarang kita tambahkan *XDIM_FILTER against ACCOUNT dimension
*XDIM_MEMBERSET TIME = 2011.JAN
*XDIM_MEMBERSET CATEGORY = BUDGET
*XDIM_FILTER ACCOUNT = [account].properties(ACCTYPE?=’AST’)
maka hasilnya adalah satu record saja yaitu CASH saja, karena CASH disini mempunyai property ACCTYPE yang isinya ‘AST’.

CASH , 2011.JAN, BUDGET, 3000