Config Text CRM IC WebClient

October 7th, 2008

Sesuai dengan permintaan dari user, ada tipe Text yang dari CRM IC Web, harus tidak boleh diubah saat transaksi di change.

CRM IC WebClient (Text and Related Information)

Tadinya aku  ngikutin cara yang sudah ada, yaitu di validasi di webnya (HText.htm). Tapi ternyata cara tersebut tidaklah benar, karena ada confignya untuk membuat Text Type tertentu tidak bisa diedit.

Caranya adalah, masuk ke SPRO -> CRM -> Basic Function -> Text Management -> Define Text Determination Procedure.
Dari menu tersebut tinggal diset ‘Changeable’ = ‘C’.

Carriage Return

September 25th, 2008

Memanipulasi text, terutama dalam textarea, kadang terjadi kendala ..
salah satunya adalah karena munculnya symbol ## saat dibaca dari abap.

Solusinya adalah, dengan membandingan nya dengan symbol khusus yang sudah disediakan yaitu :

data: lv_cr_lf type string.
lv_cr_lf  = CL_ABAP_CHAR_UTILITIES=>CR_LF.

Semoga cukup membantu.

IC WebClient Delete Item

September 16th, 2008

Hari ini saya cukup dipusingkan dengan adanya item yang entah darimana datangnya ngikut di save saat create service order dari IC webclient.

Service Item

Setelah ber-debug-ria ..akhirnya item tersebut muncul karena Badi: CRM_SERVICEPROD_BADI.

Karena satu dan lain hal, saya tidak mengubah badi tersebut, sehingga akhirnya saya membuat function untuk membaca itemnya dan menghapusnya saat event onSave.

DATA:
 lr_entity TYPE REF TO cl_crm_bol_entity,
cucoadmini TYPE REF TO cl_crm_ic_cucobt_impl,
btitem TYPE REF TO cl_crm_ic_cucobt_cn06,
coll_wrapper TYPE REF TO cl_bsp_wd_collection_wrapper,
lv_btitems TYPE REF TO cl_crm_bol_entity,
coll TYPE REF TO if_bol_entity_col. 

cucoadmini ?= me->get_custom_controller( ‘CuCoBT’ ).
btitem = cucoadmini->typed_context->btitems.
coll_wrapper = btitem->get_collection_wrapper( ).
lv_btitems ?= coll_wrapper->get_current( ).

TRY.
coll = lv_btitems->get_related_entities(iv_relation_name = ‘BTServiceItemsAll’ ).
CATCH cx_crm_genil_model_error.
ENDTRY.

IF coll->size( ) > 0.
lr_entity = coll->get_first( ).
WHILE lr_entity IS BOUND.
lr_entity->delete( ).
lr_entity = coll->get_next( ).
ENDWHILE.
ENDIF.

Mengganti Layout di CRM_IC (IC WebClient)

September 8th, 2008

Dalam project yang saya kerjakan saat ini, saya agag terbentur dengan request dari user untuk mengubah kolom di Inbox dalam IC webclient. Setelah mencoba-coba dan dibantu oleh sdr Pipit, akhirnya berhasil juga.

View Controller

Pertama-tama kita harus tahu View Controller yang digunakan. untuk inbox adalah : AuiItems. Jadi kita harus mengganti View Controller nya dengan yang akan kita buat.

1) Gunakan tcode BSP_WD_WORKBENCH dan masukkan applikasi ZCRM_IC (kalo sudah ada).
2) Copy view AutItems menjadi view yang akan kita customize (misal: AutItems_MRQ)
3) Kemudian ganti juga class controller yang ada di AutItems_MRQ.do (misal: ZMCL_CRM_IC_AUIITEMS_IMPL)
4) Tambahkan attribute ‘View1′, level: constant, Visibility: public, type: String, value: ‘AuiItems_MRQ.htm’
5) Implementasikan method CONSTRUCTOR yang isinya:
———–
method CONSTRUCTOR.
CALL METHOD SUPER->CONSTRUCTOR.
view_name = view1.
ENDMETHOD.
———————
6) Setelah semua diaktivkan, kita harus mengubah view navigasinya ke view controller yang sudah kita buat. Masuk ke SPRO : CRM -> Interaction Center WebClient -> Customer-Specific System Modification -> Define IC WebClient Runtime Framework Profiles

Demikian, semoga sedikit membantu.

Help URL di SAP EP

April 18th, 2008

Dulu saya berfikir jika ingin mengganti url di HELP dalam Enterprise Portal, harus mengganti source program nya (source in JSP).

Masthead iview propertiesTernyata hal itu tidak perlu dilakukan, untuk perubahan URL help nya bisa di config dari ‘Portal Content’, cari Default Framework Page nya, kemudian pilih Masthead iView, dan cari parameter URL of Help Link … nah tinggal ngisi deh URL nya.

Menghentikan SAP workflow

March 28th, 2008

Saat pembuatan applikasi dengan workflow, gw dihadapkan dengan kasus workflow yang nyangkut, nyangkut disini workflownya looping forever (mengirim notifikasi terus).

Jadi gw coba nyari cara untuk nyetop workflownya, dan ditemukanlah tcode SWIA.  Dan akhirnya workflow tersebut bisa dihentikan :)

Happy birthday Michelle

March 19th, 2008

Hari ini Michelle tepat berumur 3 tahun,
banyak suka duka yang kami alami, nangis malem-malem, ngompol dikasur, djoget-djoget, tertawa, berlari, nyoret-nyoret tembok … wah pokoknya banyak deh.
Sekarang-sekarang ini sih dia lagi egois banget, maunya diperhatiin mulu, nggak bisa ditinggal, gw pergi mau ngikut, mamanya pergi, dia juga mau ngikut. pokoknya nempel terus kayak perangko …hehehe.

Semoga Michelle jadi anak yang taat, pintar, dan sehat2 selalu. GBU.

Salam,
.papa & mama + dedek Joel.

Motor Automatic

March 18th, 2008

Sekarang ini banyak jenis motor automatic yang muncul. Sebut saja Vario, Mio, Nouvo, Spin atau yang lainnya. Kebanyakan pemakai motor ini adalah wanita, karena memang motor automatic memberikan banyak kemudahan dalam penggunaannya.

Akhir taun 2007, beberapa kali gw liat dijalan banyak motor automatic yang mulai menunjukkan keberadaannya, salah satunya dengan pake stiker ‘Hari gini, masih oper gigi ?’ … lutju juga slogannya … tapi hari ini gw liat pembalasan dari motor yang bukan matic, yaitu dengan ditempelnya stiker ‘Cuma NGE_GAS, NENEK gua juga BISA’. ….hahaha. … sayang gw ngak sempet ambil fotonya.

Validate Login using Webdynpro Java

March 14th, 2008

Setelah melalui perjalanan panjang, akhirnya gw bisa dapet juga cara untuk validasi login EP pake webdynpro java.

Untuk dapetin login id bisa pake script berikut:

IWDClientUser wdUser = WDClientUser.getCurrentUser();
IUser user = wdUser.getSAPUser();
IUserAccount acct=user.getUserAccounts()[0];
myID = acct.getLogonUid();

Cara untuk validasi passwordnya:

boolean lv_isvalid = false;
userAcc = UMFactory.getUserAccountFactory().getUserAccountByLogonId(p_userid);
lv_isvalid = userAcc.checkPassword(p_pass);

Mengganti Development Class

March 10th, 2008

Hari ini, tanggal 10 maret 2008, saya diberi tugas untuk mengganti user exit. Ternyata user exit yang dimaksud sudah ‘nyangkut’ ke development class yang sudah tidak ada, sehingga perubahan pada user exit tersebut tidak bisa ditransport.

Supaya perubahan user exit tersebut bisa ditransport, maka development classnya harus diganti. Cukup bingung juga menggantinya karena development class tidak bisa diganti langsung ketika ‘edit’ dalam attribute. Tanya sana sini, pada enggak tau. eh ternyata googling sebentar langsung dapet caranya.

Caranya adalah:
Buka object pake SE80, kemudian pilih ‘Development Class’, buka development classnya, trus cari programnya, tinggal klik kanan -> More function -> change development class.