Showing posts with label %metadata. Show all posts
Showing posts with label %metadata. Show all posts

Monday, April 27, 2009

Viewing PeopleCode Online

Is is possible to see PeopleCode asscociated with any Record Field/Component/Page etc, online( Through PIA) ?

Yes, thanks to %matadata API.

Use following code at behind a push button (Field Change) and you'll see the code as a message pop up. ( Please enter record, field and event name in below code.)


import %metadata:PeopleCodeProgram:PeopleCodeProgram;
import %metadata:PeopleCodeProgram:PeopleCodeProgram_Manager;
import %metadata:Key;

Local %metadata:PeopleCodeProgram:PeopleCodeProgram_Manager &mgr = create %metadata:PeopleCodeProgram:PeopleCodeProgram_Manager();
Local %metadata:Key &key = create %metadata:Key(Key:Class_Record, , Key:Class_Field, , Key:Class_Method, ;
Local %metadata:PeopleCodeProgram:PeopleCodeProgram &Prog = &mgr.GetDefn(&key);

If &Prog <> Null then

Local string &sProgramText = &Prog.GetProgram();
winmessage(&sProgramText ,0);

else

Winmessage("No PeopleCode Event Defined",0);

end-if;