Server package definition
This model defines middle tier handlers, methods and data structures (documents).
Syntax:
Name Component [ CodeGenProperties ] PackageType [ JavaLibraries ] [ ModelDependencies ] Handlers Documents
package MovieManager; component APPS8; category Activity; activityhandler MovieDb { activity ViewMovie; servicelevel Supported; dependencies { handler MovieManager.Kalle; ejb "Kalle"; } methods { get<Movie>; list<Actor>; custom ListMoviesByActor { in Alpha ActorName; return Document<Movie>[]; filter Movie.Thrillers; transaction Supports; } } } activityhandler MovieBrowser { activity BrowseMovie; servicelevel Supported; methods { populate<Movie> PopulateMovie; query<Movie> QueryMovie { filter Movie.Thrillers; } custom ListMoviesByActor { in Alpha ActorName; return Document<Movie>[]; filter Movie.Thrillers; transaction Supports; } populate<Actor> PopulateActor; query<Actor> QueryActor; custom ListMoviesByYear { in Integer Year; return Document<Movie>[]; transaction Required; } plsql CancelItem { in Text OrderItemId; out Text AutomaticPaymentType; in Text OrderId; in Text Company; PL/SQL-Block { BEGIN Order_Ledger_Item_API.Cancel_Item(:OrderItemId,:AutomaticPaymentType,:OrderId,:Company); END; } transaction Required; ServerImplementation "framework"; } plsql CancelItem1 { PL/SQL-Block { DECLARE BEGIN &AO.Order_Ledger_Item_API.Cancel_Item(:ORDER_ITEM_ID_$IN$VARCHAR2,:AUTOMATIC_PAYMENT_TYPE_$IN$VARCHAR2,:ORDER_ID_$IN$VARCHAR2,:COMPANY_$IN$VARCHAR2); END; } transaction Required; } } } activityhandler MovieEditor { activity EditMovie; servicelevel Supported; methods { prepare<Movie>; get<Movie>; populate<Movie>; query<Movie>; save<Actor>; save<MovieActor>; savearray<MovieActor>; prepare<Actor>; custom DeleteMovie { in Integer MovieId; transaction Required; } event StartFilming { inout Document<Movie> Movie; PL/SQL-Block { BEGIN &AO.Movie_API.Film__(:INFO_$out$Text, :OBJID_$in$Text, :OBJVERSION_$in_out$Text, :ATTR_$in_out$Text, :ACTION_$in$Text); END; } } event CancelMovie { inout Document<Movie> Movie; PL/SQL-Block { BEGIN &AO.Movie_API.Cancel__(:INFO_$out$Text, :OBJID_$in$Text, :OBJVERSION_$in_out$Text, :ATTR_$in_out$Text, :ACTION_$in$Text); END; } } event StartPostProduction { inout Document<Movie> Movie; PL/SQL-Block { BEGIN &AO.Movie_API.Post_Produce__(:INFO_$out$Text, :OBJID_$in$Text, :OBJVERSION_$in_out$Text, :ATTR_$in_out$Text, :ACTION_$in$Text); END; } } event ReleaseMovie { inout Document<Movie> Movie; PL/SQL-Block { BEGIN &AO.Movie_API.Release__(:INFO_$out$Text, :OBJID_$in$Text, :OBJVERSION_$in_out$Text, :ATTR_$in_out$Text, :ACTION_$in$Text); END; } } } } activityhandler MovieDetail { activity MovieDetail; servicelevel Supported; methods { get<Movie>; } } activityhandler MovieViewer { activity ViewMovie; servicelevel Supported; methods { custom ShowMovie { in Alpha MovieId; return Document<Movie>; transaction Supports; } } implementation { plsql GetEuMember { in Text Countrycode; return Text; PL/SQL-Block { DECLARE BEGIN :F_RESULT$Text :=&AO.Iso_Country_API.Get_Eu_Member(:Countrycode); END; } transaction Required; ServerImplementation "framework"; } } } servicehandler MovieAccess { service MovieAccess; servicelevel Supported; methods { get<Movie>; synchronize<Movie>; } } implementationhandler MovieUtil { methods { list<Movie>; list<Actor>; } } entitydocument Movie for Movie { attributes { use Title Text(100); use ReleaseDate Date; use Genre Enumeration<Genre>; use CountryCode Text(2); } aggregates { array Actors MovieActor(pk -> MovieId); } } entitydocument Actor for Actor { attributes { use FirstName Text(100); use LastName Text(100); use BirthDate Date; } } entitydocument MovieActor for MovieActor { attributes { use CharacterName Text(100); use PerformanceRating Number(10); } aggregates { reference Actor Actor(ActorId -> ActorId); } } querydocument MovieList { SQL-Statement SELECT movie_id, title, release_date FROM movie; attributes { key MovieId Number; use Title Text; use ReleaseDate Date; } } luwrapperdocument MovieAccesses { databaseview "movie_info"; databasepackage "Movie_API"; attributes { key MovieId Number; use Title Text; use ReleaseDate Date; } } document MovieList2 extends MovieList { aggregates { array Actors MovieActor(pk -> MovieId); } } nonpersistentdocument AdditionalInfo { attributes { attribute Description Text; } } externaldocument FrameworkInfo "ifs.jsf.FrameworkInfo";
This page is generated from IFS Developer Studio at 2021-08-13 08:40.