Invoking Perl module from Apex

I am developing an application using Apex that needs to be integrated with some other modules written in different languages.
In my application I need to invoke a perl module/API based on some button action.
Please suggest me the ways how I can do this.
The perl module is already existing one and now we can not change it to Java program.

Hello,
Whilst it's possibly to 'call out' to an external Perl module, I think you're actually probably making things more complicated by going that route.
As an alternative, why not have the Perl code actually connect to the Oracle database and check for the data changing itself?
If you do want to perform the external call yourself, then the following AskTom thread should give you some ideas on how to do it -
http://asktom.oracle.com/pls/ask/f?p=4950:8:9608971842817866565::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:952229840241
There's actually some other options, you could actually connect to the other databases directly from the Oracle DB (using dblinks, hetrogenous connectivity etc), or you could convert the Perl module (or wrap it) so that it's callable via a URL in which case you could then perform an HTTP call from out of the database using utl_http.
It really depends on the specifics of what your perl module does, what sort of processing etc.

Similar Messages

  • At Craig's suggestion: Why Invoke PERL functionality from WD-ABAP?

    Craig -
    This is response to your suggestion that I post my own reasons for thinking that it would be useful to be able to invoke PERL functionality from WD-ABAP.
    Please note at the outset that these reasons are based on my own personal belief that the relatively new vertical sectors of bioinformatics/biomed could produce reasonably significant income for SAP in a reasonably short time if SAP decided to create application-level functionalities in these areas. 
    This belief is in turn based on a very significant new initiative which has been publicly announced by the university Medical Center recently voted "most-wired" (Vanderbilt) and equivalent initiatives at other university Medical Centers across the country.  (BTW, I've posted a meeting time (Tue 7pm) at Tech Ed for anyone who wants to learn more about these initiatives, the new vertical sectors they define, and how SAP could EASILY play in them.)
    So, with this background established, assume that SAP does decide to play in the bioinformatic/biomed sector. 
    SAP will rapidly find that a lot of biomed is based on the kind of bioinformatics that essentially does pattern-analysis on two kinds of strings: polynucleotide strings (DNA, mRNA, tRNA, etc.) and polypeptide strings (mainly the amino acid strings that form the "primary structures" of protiens.)  For example, biomed will soon include the ID of "at risk" markers for all patients in a university medical center, indicating what diseases patients may be genetically at risk for due to SNP's and other abnormalities in their inherited DNA.
    Now when such analysis is not done by running "canned" versions of well-developed programs such as the ubiqitious BLAST program for "aligning" polynucleotide or polypeptide sequences, it is done by programs written in languages that offer superb capabilities for pattern-searching and manipulation of strings, e.g. PERL.
    Additionally, I know from personal experience and the experience of my SigOther that even data obtained from well-known canned programs must be further massaged by non-canned techniques that again are readily implementable in PERL and other similar languages.
    Finally, a lot of bioinformatic/biomed applications require iterative batch execution of canned stat routines such as t-tests or normality tests, which can be conveniently done via calls from languages such as PERL to canned products such as STATA.
    So assume SAP wants to develop a biomed application that has:
    back-end data containing the usual kinds of info med centers need to know about patients, plus the new kinds of scientific info about patients that med centers are creating
    a presentation component that displays these two kinds of data for query, further elaboration/refinement, and subsquent update.
    For example, there will be times when a doctor will want to take scientific data on a patient from the back-end (e.g. portions of a patient's DNA), subject it to pattern-analysis of the type described above, and then store the results of the analysis as additional new scientific info in the back-end databases.
    And SAP can readily provide the doctor with this capability if it allows PERL functionality to be invoked from WD/WD-ABAP components.  In some cases, the PERL will simply invoke industry-standard canned programs such as BLAST and wrap the results in a way friendly to SAP.  In other cases, the PERL may do the analysis itself.  In other cases, the PERL may invoke stat programs.  Etc, etc. etc.
    The point is that there is a vast inventory of bioinformatic/biomed PERL code out there, and if SAP wants to get serious about playing in the bioinformatics/biomed sector, it will be much easier to talk to this inventory of programs rather than recreate it in JAVA or SAP inside SAP. 
    Anyway, please remember - this post was based on the  assumption that SAP may want to get serious about playing in the bioinformatic/biomed sector.
    If not, then as Rosanne Rosanadanna used to say, "Never mind".

    Hi David,
    Where it can be used :-
    Anywhere that you can insert ABAP code to run, you can integrate Perl in the manor that I laid out.  The only requirements are the ability to run registered RFC programs, and to execute ABAP code including RFC calls (which is anywhere inside of an R/3 system basically).
    Comparison with other techniques :-
    All communication from the ABAP stack with the J2EE stack is done via RFC - this is only faster than a registerd RFC Server if Fast RFC is used which means that the J2EE stack MUST reside on the same host as the R/3 instance.  Therefore there is no performance difference at that level and any performance differentiation is going to be in the programming language Perl vs Java, or payload encoding techniques (XML) at that level (not withstanding the consideration of development time).
    There is also the HTTP Client communication facilities - with or without document encodings (the ICF + eg. SOAP).  Again - I'd take a long hard look at whether it is necessary to be encumbered with the data packet encoding/ecapsulation overhead.
    What you gain :-
    Once you are in the "land of Perl" you have access to essentially any module you can find on CPAN, so any data access you require whether it be some kind of application server technology, or DB, can be fullfilled by whats available there (unless you need to roll your own?).  And lets not forget algorythm implemented in Perl or Perl XS extensions - probably very important in the medical/scientifc field.
    SOA (IMO) is a big ugly 4 letter word.  At the end of the day, you have to look where your time and money is best spent, and whether you can achieve the desired results using Scripting Language Connector technology, or whether you feel compelled to go down a WS-* style route.
    However - I would like to say this - IMO it is totally unecessary to wrap up system integration in multiple (expensive both in money, and performance considerations) layers if you are confident that you have good control over both ends of the communication streams.  I believe that when your main objective is to utilise large chunks of code written in another language (rather than reimplement it in something closer to SAPs core interests), or communicate with inhouse data sources/systems (I've done this for MySQL before), then this is definitely one such case that opens the door for using my outlined approach (in the article).
    Cheers,
    Piers Harding.
    Message was edited by: Piers Harding

  • Problem calling two perl modules from java in seperate threads(JVM CRASHES)

    Dear Friends,
    I have one severe problem regarding calling perl modules from java
    I had to call two perl modules simultaneously (i.e.) from two threads,,, but jvm crashes when one of the perl calls is exiting earlier
    I am unable to spot out why ....
    For calling perl from java ...., We are first calling C code from java using JNI and then Perl code from C
    All works fine if we call only one perl call at a time.... If we call them in a synchronized manner the JVM is not crashing .... But we don't want blocking..
    The following is the code snippet
    <JAVA FILE>
    class Sample
         static {
              System.loadLibrary("xyz");  // Here xyz is the library file generated by compiling c code
         public native void call_PrintList();
         public native void call_PrintListNew();
         Sample()
              new Thread1(this).start();     
         public static void main(String args[])
              System.out.println("In the main Method");
              new Sample().call_PrintList();
         class Thread1 extends Thread
              Sample sample;
              Thread1(Sample sam)
                   sample=sam;
              public void run()
                   sample.call_PrintListNew();     
    }<C FILE>
    #include <EXTERN.h>
    #include <perl.h>
    static PerlInterpreter *my_perl;
    static char * words[] = {"alpha", "beta", "gamma", "delta", NULL } ;
    static void
    call_PrintList(){
         printf("\nIn the Call method of string.c\n");
            char *wor[] = {"hello", "sudha", NULL } ;
               char *my_argv[] = { "", "string.pl" };
               PERL_SYS_INIT3(&argc,&argv,&env);
               my_perl = perl_alloc();
                   PL_perl_destruct_level = 1; //// We have mentioned this also and tried removing destruct call
               perl_construct( my_perl );
               perl_parse(my_perl, NULL, 2, my_argv, (char**)NULL);
              PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
               perl_run(my_perl);
         dSP ;
            perl_call_argv("PrintList",  G_DISCARD, wor) ;
    PL_perl_destruct_level = 1;
    //     perl_destruct(my_perl);
    //          perl_free(my_perl);
    //           PERL_SYS_TERM();
    static void
    call_PrintListNew(){
    printf("In the new call method\n");
    char *wor[] = {"Hiiiiiiiiiiiiiii", "Satyam123333", NULL } ;
            char *my_argv[] = { "", "string.pl" };
            PERL_SYS_INIT3(&argc,&argv,&env);
            my_perl = perl_alloc();
    PL_perl_destruct_level = 1;
            perl_construct( my_perl );
            perl_parse(my_perl, NULL, 2, my_argv, (char**)NULL);
            PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
            perl_run(my_perl);
            dSP ;
            perl_call_argv("PrintListNew",  G_DISCARD, wor) ;
    PL_perl_destruct_level = 1;
      //      perl_destruct(my_perl);
      //      perl_free(my_perl);
       //     PERL_SYS_TERM();
    void callNew()
    call_PrintListNew();
    void call ( )
    call_PrintList();
    //char *wor[] = {"hello","sudha",NULL};
    /*   char *my_argv[] = { "", "string.pl" };
          PERL_SYS_INIT3(&argc,&argv,&env);
          my_perl = perl_alloc();
          perl_construct( my_perl );
          perl_parse(my_perl, NULL, 2, my_argv, (char**)NULL);
         PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
          perl_run(my_perl);*/
       //   call_PrintList();                      /*** Compute 3 ** 4 ***/
    /*      perl_destruct(my_perl);
          perl_free(my_perl);
          PERL_SYS_TERM();*/
        }And Finally the perl code
    sub PrintList
                my(@list) = @_ ;
                foreach (@list) { print "$_\n" }
    sub PrintListNew
                my(@list) = @_ ;
                foreach (@list) { print "$_\n" }
            }Please help me in this regard

    Dear Friends,
    I have one severe problem regarding calling perl modules from java
    I had to call two perl modules simultaneously (i.e.) from two threads,,, but jvm crashes when one of the perl calls is exiting earlier
    I am unable to spot out why ....
    For calling perl from java ...., We are first calling C code from java using JNI and then Perl code from C
    All works fine if we call only one perl call at a time.... If we call them in a synchronized manner the JVM is not crashing .... But we don't want blocking..
    The following is the code snippet
    <JAVA FILE>
    class Sample
         static {
              System.loadLibrary("xyz");  // Here xyz is the library file generated by compiling c code
         public native void call_PrintList();
         public native void call_PrintListNew();
         Sample()
              new Thread1(this).start();     
         public static void main(String args[])
              System.out.println("In the main Method");
              new Sample().call_PrintList();
         class Thread1 extends Thread
              Sample sample;
              Thread1(Sample sam)
                   sample=sam;
              public void run()
                   sample.call_PrintListNew();     
    }<C FILE>
    #include <EXTERN.h>
    #include <perl.h>
    static PerlInterpreter *my_perl;
    static char * words[] = {"alpha", "beta", "gamma", "delta", NULL } ;
    static void
    call_PrintList(){
         printf("\nIn the Call method of string.c\n");
            char *wor[] = {"hello", "sudha", NULL } ;
               char *my_argv[] = { "", "string.pl" };
               PERL_SYS_INIT3(&argc,&argv,&env);
               my_perl = perl_alloc();
                   PL_perl_destruct_level = 1; //// We have mentioned this also and tried removing destruct call
               perl_construct( my_perl );
               perl_parse(my_perl, NULL, 2, my_argv, (char**)NULL);
              PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
               perl_run(my_perl);
         dSP ;
            perl_call_argv("PrintList",  G_DISCARD, wor) ;
    PL_perl_destruct_level = 1;
    //     perl_destruct(my_perl);
    //          perl_free(my_perl);
    //           PERL_SYS_TERM();
    static void
    call_PrintListNew(){
    printf("In the new call method\n");
    char *wor[] = {"Hiiiiiiiiiiiiiii", "Satyam123333", NULL } ;
            char *my_argv[] = { "", "string.pl" };
            PERL_SYS_INIT3(&argc,&argv,&env);
            my_perl = perl_alloc();
    PL_perl_destruct_level = 1;
            perl_construct( my_perl );
            perl_parse(my_perl, NULL, 2, my_argv, (char**)NULL);
            PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
            perl_run(my_perl);
            dSP ;
            perl_call_argv("PrintListNew",  G_DISCARD, wor) ;
    PL_perl_destruct_level = 1;
      //      perl_destruct(my_perl);
      //      perl_free(my_perl);
       //     PERL_SYS_TERM();
    void callNew()
    call_PrintListNew();
    void call ( )
    call_PrintList();
    //char *wor[] = {"hello","sudha",NULL};
    /*   char *my_argv[] = { "", "string.pl" };
          PERL_SYS_INIT3(&argc,&argv,&env);
          my_perl = perl_alloc();
          perl_construct( my_perl );
          perl_parse(my_perl, NULL, 2, my_argv, (char**)NULL);
         PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
          perl_run(my_perl);*/
       //   call_PrintList();                      /*** Compute 3 ** 4 ***/
    /*      perl_destruct(my_perl);
          perl_free(my_perl);
          PERL_SYS_TERM();*/
        }And Finally the perl code
    sub PrintList
                my(@list) = @_ ;
                foreach (@list) { print "$_\n" }
    sub PrintListNew
                my(@list) = @_ ;
                foreach (@list) { print "$_\n" }
            }Please help me in this regard

  • Invoking perl cartridge from another perl cartridge

    Hi,
    I have a perl cgi tht I am porting to the cartridge framework and am having the following issue:
    the perl script "opens" another perl script (and "system"s another). THis does not seem to work in my setup presumable because the standalone version of perl is not installed. Now, I want to get the performance benefits of a cartridge while invoking these other perl scripts. Also, I know that I can make these other scripts as modules and it will work, but how do I invoke these scripts via a cartridge (they are in a different folder).
    An example (with any requisite syntax) will be greatly appreciated.
    regards

    Hello,
    Whilst it's possibly to 'call out' to an external Perl module, I think you're actually probably making things more complicated by going that route.
    As an alternative, why not have the Perl code actually connect to the Oracle database and check for the data changing itself?
    If you do want to perform the external call yourself, then the following AskTom thread should give you some ideas on how to do it -
    http://asktom.oracle.com/pls/ask/f?p=4950:8:9608971842817866565::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:952229840241
    There's actually some other options, you could actually connect to the other databases directly from the Oracle DB (using dblinks, hetrogenous connectivity etc), or you could convert the Perl module (or wrap it) so that it's callable via a URL in which case you could then perform an HTTP call from out of the database using utl_http.
    It really depends on the specifics of what your perl module does, what sort of processing etc.

  • Installing Perl Modules from CPAN

    I am new to Perl and new-ish to Arch Linux.  I want to start to install some packages from CPAN.
    I read the perl package wiki article and while I found it on the overwhelming side, I took away that one of the recommended ways to install things from CPAN was with CPANPLUS::Dist::Arch.
    So I installed this via
    pacman -S perl-cpanplus-dist-arch
    setupdistarch
    Now I want to install some packages.  The cpanp manpage (as well as an example I found) seemed to indicate that this was now as easy as
    cpanp i <modulename>
    However, when I go to install any module, I get errors like
    monolith: ~$ cpanp i Test::Harness
    Installing Test::Harness (3.28)
    CPANPLUS::Dist::Base will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at /usr/share/perl5/vendor_perl/CPANPLUS/Dist/Arch.pm, line 6.
    CPANPLUS::Dist::Build::Constants will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at /usr/share/perl5/core_perl/CPANPLUS/Dist/Build.pm, line 16.
    Running [/usr/bin/perl -e use strict; BEGIN { my $old = select STDERR; $|++; select $old; $|++; $0 = shift(@ARGV); my $rv = do($0); die $@ if $@; } /home/jschwab/.cpanplus/5.18.1/build/Test-Harness-3.28/Makefile.PL INSTALLDIRS=site]...
    Checking if your kit is complete...
    Looks good
    Writing Makefile for Test::Harness
    Writing MYMETA.yml and MYMETA.json
    [MSG] Module 'Test::Harness' depends on 'ExtUtils::MakeMaker', may need to build a 'CPANPLUS::Dist::Arch' package for it as well
    [ERROR] Unknown variable name in IF block: checkdepends at /usr/share/perl5/core_perl/CPANPLUS/Module.pm line 830.
    Searching Google for the error message just returned copies of the 'Module.pm' file in which the message appears.  Could someone help me figure out what is going on?
    Last edited by wesphys (2013-09-13 22:55:13)

    wesphys wrote:
    I am new to Perl and new-ish to Arch Linux.  I want to start to install some packages from CPAN.
    I read the perl package wiki article and while I found it on the overwhelming side, I took away that one of the recommended ways to install things from CPAN was with CPANPLUS::Dist::Arch.
    So I installed this via
    pacman -S perl-cpanplus-dist-arch
    setupdistarch
    Trying to reproduce above sequence:
    [bitcoin@alarm-01 ~]$ yaourt -S perl-cpanplus-dist-arch
    [sudo] password for bitcoin:
    resolving dependencies...
    looking for inter-conflicts...
    Packages (1): perl-cpanplus-dist-arch-1.28-1
    Total Download Size: 0.04 MiB
    Total Installed Size: 0.15 MiB
    :: Proceed with installation? [Y/n] Y
    :: Retrieving packages ...
    perl-cpanplus-dist-... 43.1 KiB 6.10K/s 00:07 [######################] 100%
    (1/1) checking keys in keyring [######################] 100%
    (1/1) checking package integrity [######################] 100%
    (1/1) loading package files [######################] 100%
    (1/1) checking for file conflicts [######################] 100%
    (1/1) checking available disk space [######################] 100%
    (1/1) installing perl-cpanplus-dist-arch [######################] 100%
    [bitcoin@alarm-01 ~]$ setupdistarch
    -bash: setupdistarch: command not found
    [bitcoin@alarm-01 ~]$ cd /usr/bin/vendor_perl/
    [bitcoin@alarm-01 vendor_perl]$ ls
    cpan2aur setupdistarch
    [bitcoin@alarm-01 vendor_perl]$
    Please advise. TiA

  • Executing perl script from Apex

    Hi,
    I have a requirement, to post the form controls in the apex page onto a perl script.
    Can any one let me know whether this is feasible in Apex.
    If Yes, can anyone please give me the steps or the related documents to 'submit' the apex page to specific perl script.
    Any answers to this would be greatly helpful for us as we are dependent on this kind of architecture completely for
    our requirements.
    Thanks in advance,
    Sumanth

    Hi,
    I haven´t done this myself but I think the way to go is call perl from the database as an external procedure.
    You might want to google for extproc_perl which should be the extension to use perl as an external procedure/
    On the submit you can trigger PL/SQL to call the external procedure.
    Regards
    Bas

  • How to call a perl module from Java program.

    Hi,
    I create a simple java program as follows
    class test{
    public static void main(String args[])
    {try {                    
    Runtime r = Runtime.getRuntime();
    r.exec("perl test.pl");
    catch(Exception e)
    {e.printStackTrace();}
    and test.pl is located in the same directory as the java program. The program compiles but with no return as I execute it. I am not sure what is wrong.
    Thanks,

    I think the wrong line is here; r.exec("perl test.pl");
    Usually the JVM needs the full path.If the path for either the executable or the script was wrong then, given the code posted, it would not hang.
    >
    To automatticaly get the path (if the file is in the
    class path) use
    System.getProperty("java.class.path")
    That gets paths(plural).
    Try this:
    r.exec("perl " +
    System.getProperty("java.class.path") + "\test.pl");I am rather certain that that won't work on any standard operating system.

  • Invoke perl script from JAVA 1.4.2

    Hello All,

    Has this been resolved?
    I'm having an issue with it also, using the command line as such:
    j2sdk-1_4_2_02-windows-i586-p.exe /s /v "/qn ADDLOCAL=jrecore IEXPLORER=0 INSTALLDIR=D:\Progra~1\j2sdk-1_4_2_02 REBOOT=Suppress JAVAUPDATE=0 /L D:\temp\jvm142install.log"
    I've also tried different variations of the commands in "", but still no luck.
    From the command prompt it appears to hang, but comes back to the command prompt about 10 seconds later and nothing gets installed.
    Previous to installing it from the command line, I had installed it manually, and ran add/remove programs to remove it from the system.
    Is there something I should check in the registry that might be prevening the above command to run?
    InstallSheild's web site was helpful, but gave command line options for the msiexec to run.
    Any help would be appreciated!

  • Calling Perl module in Java

    Hai,
    I like to know, How do I call a perl module from my java program such that the
    output of the perl module is used in my Java program ?
    Regards
    ackumar

    This is my sample perl program.
    #!/usr/bin/perl
            $s=hello();
            print "$s\n";
            sub hello{
                    return "HELLO WORLD"
            }I like to use the perl program in my java program. So I wrote the following code.
    But I don't know how to get the output "HELLO WORLD" of my sample.pl by running my code
    perl_java. java
    import java.lang.*;
    import java.io.*;
    class perl_java{
            public static void main(String args[]){
                    try{
                    Process p = Runtime.getRuntime().exec("perl sample.pl");
                    OutputStream os=p.getOutputStream();
                    }catch(Exception ee){ee.printStackTrace();}
    }

  • Execute sql script from apex

    hi all
    i have dir /usr/tmp which there i have script in sql that creats a report
    in the command line i'm running the script like this :
    sqlplus user/passwd@db @name_of_script
    my goal is to run this script thru the apex
    i tried to create some process
    before header like this
    :p116 := sqlplus user/passwd@db @/usr/tmp/name_of_script ;
    doesn't work!!
    i even try to put this action in table but then i don't know how to run this ?
    can it executed in apex ? if yes then how ?
    thanks a lot

    I checked the link and it did not work, so I am reposting my original reply below.
    had a requirement to run a Fortran program against some data that woudl be extracted from the database after the user set up their filtering criteria and made some additional input. SInce the program was to complex to conver to PL/SQL, we decided to try and invoke it from Apex. This is how I did it.
    1. I followed the steps in Tim Archer's excellent article "Oracle External Procedure to Run Host Commands" (http://www.timarcher.com/?q=node/9). If the link does nto work, google the article's title.
    Using this steps I created a function which accepts any OS command, including calling my own shell scripts, and runs them. I called my PL/SQL function "shell" instead of "USF_RUN_HOST_CMD " as Tim did in his example (step 9).
    2. In Apex,
    a. I created a button to run my shell command. (I named it P2_RUN_SHELL)
    b. I created a PL/SQL process whose source looks as follows:
    shell('/home/ackness/scripts/cr_xcf_file.sh > /tmp/cr_scfp_file.log');
    and which was conditioned on the the button P2_RUN_SHELL.
    It works like a charm.
    Note: since you can run your own scripts using this method, you can encapsulate a series of commands in a UNIX shell script and invoke that script from Apex. This allows you to be able to test or run you commands from the command line as well as Apex and makes it easier to develop/debug/enhance the scripts in the future.
    Ackness

  • How to invoke RFC function module from XI interface

    Hi all,
    I am having one question, How to invoke RFC function module from XI interface.
    Please reply me as soon as possible.
    Thanks in advance,
    Radhika

    Hi,
    To call the RFC in mapping u need to create the RFC lookups...check these links.
    How we have to create the lookups?
    Check this weblogs with some screenshots on how to achieve this:
    /people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler
    /people/sravya.talanki2/blog/2005/12/21/use-this-crazy-piece-for-any-rfc-mapping-lookups
    /people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer
    /people/sap.user72/blog/2005/12/06/optimizing-lookups-in-xi
    /people/morten.wittrock/blog/2006/03/30/wrapping-your-mapping-lookup-api-code-in-easy-to-use-java-classes
    lookups in xi
    XI Design Guidelines
    Re: RFC Lookup API
    /people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a03e7b02-eea4-2910-089f-8214c6d1b439
    Regards,
    Phani

  • Calling Oracle Discoverer Report from Apex

    How to call Oracle Discoverer Report from apex application?
    Thanks!

    The report is on a different data base ... need to create a process to get the data into the view behind the report and then materialized view in Apex etc .Then recreate the same report in Apex. But I am trying use the disc report url to invoke the report directly from apex.
    Any suggestions or thoughts are greatly aprreciated.

  • Unable to pass parameters from APEX to Oracle EBusiness suite R12 forms

    Hi
    We are trying to access a standard Oracle EBusiness form i.e. service request and are invoking this Form through a link from APEX.
    We are trying to pass parameters via this URL
    http://abc.oneapps.com:8010/OA_HTML/RF.jsp?function_id=2037&resp_id=50952&resp_appl_id=170&security_group_id=0&lang_code=US&otherparams=INCIDENT_ATTRIBUTE_15=5206
    The EBusiness suite form is launched correctly but we are not able to read the parameter value through custom.pll code.
    if (event_name = 'WHEN-NEW-BLOCK-INSTANCE') then
         IF form_name='CSXSRISR' and block_name='SR_BSC_QUERY' then
              FND_MESSAGE.DEBUG('PARAMETER.INCIDENT_ATTRIBUTE_15');
              FND_MESSAGE.DEBUG(' ');
              --FND_MESSAGE.DEBUG(:PARAMETER.INCIDENT_ATTRIBUTE_15);
              lC_incident_number :=name_in('PARAMETER.INCIDENT_ATTRIBUTE_15');
              FND_MESSAGE.DEBUG('Incident Number'||lC_incident_number);
              IF lC_incident_number IS NOT NULL THEN
                   copy(lc_incident_number,'SR_BSC_QUERY.INCIDENT_NUMBER');
              END IF;     
              FND_MESSAGE.DEBUG(' ');
         END IF;
    END IF;
    Is this the right way of passing the parameters?
    all technical inputs are welcome.
    Regards
    Sam

    Hi
    We are trying to access a standard Oracle EBusiness form i.e. service request and are invoking this Form through a link from APEX.
    We are trying to pass parameters via this URL
    http://abc.oneapps.com:8010/OA_HTML/RF.jsp?function_id=2037&resp_id=50952&resp_appl_id=170&security_group_id=0&lang_code=US&otherparams=INCIDENT_ATTRIBUTE_15=5206
    The EBusiness suite form is launched correctly but we are not able to read the parameter value through custom.pll code.
    if (event_name = 'WHEN-NEW-BLOCK-INSTANCE') then
         IF form_name='CSXSRISR' and block_name='SR_BSC_QUERY' then
              FND_MESSAGE.DEBUG('PARAMETER.INCIDENT_ATTRIBUTE_15');
              FND_MESSAGE.DEBUG(' ');
              --FND_MESSAGE.DEBUG(:PARAMETER.INCIDENT_ATTRIBUTE_15);
              lC_incident_number :=name_in('PARAMETER.INCIDENT_ATTRIBUTE_15');
              FND_MESSAGE.DEBUG('Incident Number'||lC_incident_number);
              IF lC_incident_number IS NOT NULL THEN
                   copy(lc_incident_number,'SR_BSC_QUERY.INCIDENT_NUMBER');
              END IF;     
              FND_MESSAGE.DEBUG(' ');
         END IF;
    END IF;
    Is this the right way of passing the parameters?
    all technical inputs are welcome.
    Regards
    Sam

  • ITunes cannot read ID3 tags written by Perl module MP3::Tag?

    Greetings,
    Just trying to re-arrange ID3 information in a large set of MP3 files. Before I run the following Perl script, iTunes can read the ID3 tagging information. After writing ID3 inform ation to the MP3, iTunes no longer reads any tagging information from the MP3.
    Does anyone have any information regarding this? There is some cryptic information in the MP3::Tag POD regarding setting the "id3v23_unsync" option but that doesn't seem to alter the impact on iTunes at all. Windows and other tag readers seem to be able to read the all ID 3v1 and ID3v2 tags just fine (including the altered fields) after running the following script.
    Thanks for any suggestions/guidance anyone can provide.
    Description: the following program takes an MP3 filename as input.
    Action: It appends the value in the Album field to front of the TITLE Field. That's it! Easy!
    #!/usr/bin/perl -w
    use MP3::Tag;
    MP3::Tag-> config(id3v23_unsync=>FALSE);
    my $filename = $ARGV[0];
    $mp3 = MP3::Tag-> new($filename);
    @info=$mp3-> autoinfo;
    @albnum = split(/_/, $info[3]);
    $frame = $mp3-> {ID3v2}->get_frame("TIT2");
    print $frame;
    $mp3-> {ID3v1}->title("$albnum[0] $info[0]");
    $mp3-> {ID3v2}->change_frame("TIT2","$albnum[0] $info[0]");
    $mp3-> {ID3v1}->write_tag();
    $mp3-> {ID3v2}->write_tag();
    @info=$mp3-> autoinfo;
    print $info[0]; //print ID3v1 TITLE field
    $frame = $mp3-> {ID3v2}->get_frame("TIT2");
    print $frame; //print ID3v2 Title2 field
    $mp3-> close();
    Thanks!
    GL
      Windows XP  

    SOLVED
    Changing the config entry (Line 3 in original listing) to:
    MP3::Tag->config("id3v23_unsync",0);
    fixed the problem with iTunes.
    NOTE: This means that iTunes version 7.x still has the synchronization problem alluded to in the documentation (POD) for this Perl module. I just had the syntax wrong to set the workaround parameter.
    That aside, iTunes 7.2 works quite nicely with the modified MP3. Artwork (even though this was a modified and obscure (and legal) Bible audio, it found additional information about the MP3 in the online database).
    Kind Regards,
    GL
      Windows XP  

  • How to call external Perl routines from Pl/SQL - Urgent

    Available software in the Test Environment:
    1. Sun Unix 2.8
    2. Oracle 8.1.7 ( 8i)
    3. Perl 5
    Iam trying to call/execute perl scripts from PL/SQL using the DEMO_RDBMS.mk. I am able to call C scripts from PL/SQL, but actually want to call Perl scripts.
    The steps followed for for C are -
    1. Create and compile a simple C program to execute a unix command (eg., touch a file).
    2. Make a shared library of the above compiled program (object), i.e., load the compiled object module into a dynamic load library.
    3. Declare the above library in Oracle using SQL*Plus.
    4. Define a PL/SQL function or procedure to call the external routine.
    5. Test the external routine.
    The above steps run good for a C program, but step 2 fails when run for a Perl script.
    When I tried to use the following command for step 2 -
    make -f $ORACLE_HOME/rdbms/demo/demo_rdbms.mk extproc_callback \
    SHARED_LIBNAME=cmd_lib.so \
    OBJS=tst_cmd.pl
    got the following error -
    ld: fatal: file tst_cmd.pl: unknown file type.
    ld: fatal: File processing errors. No output written t cmd_lib.so
    *** Error code 1
    This gives me an indication that demo_rdbms.mk does not understand/interpret Perl scripts. Going through the demo_rdbms.mk suggests the same.
    My questions is - How do we call external Perl scripts/routines from PL/SQL ??
    Do I have to get a different version of "demo_rdbms.mk" ?
    PS: The perl scripts used above (tst_cmd.pl) is error free and works as intended in the unix environment.

    Iam trying to call/execute perl scripts from PL/SQL using the DEMO_RDBMS.mk. I am able to call C scripts from PL/SQL, but actually want to call Perl scripts. Well, C is a "compiler" language and Perl is interpreted. In a sense, C is not "scripts".
    When I tried to use the following command for step 2 -
    make -f $ORACLE_HOME/rdbms/demo/demo_rdbms.mk extproc_callback \
    SHARED_LIBNAME=cmd_lib.so \
    OBJS=tst_cmd.pl
    got the following error -
    ld: fatal: file tst_cmd.pl: unknown file type.
    ld: fatal: File processing errors. No output written t cmd_lib.soI guess this compiles an extproc "stub" with your object file, generating an external procedure. So the object file really needs to be an object file :-)
    My questions is - How do we call external Perl scripts/routines from PL/SQL ??I'd guess you need an embedded Perl interpreter in the external procedure.
    Not much help though I'm afraid :-/
    Cheers
    Fredrik

Maybe you are looking for

  • Email Pop Up window on click of  tool area Link.

    hi i have three links say Link 1, Link 2, Link 3 in my tool are.My requirement is to have an email pop up opened with a defaulting email address in the "To" field to report an error or a query to the Link 3. Is it possible to implement this functiona

  • Error - Could not place the document 'IMG_1664.MOV' because no parser...

    I am trying to open a video to edit within Photoshop CS6 x64. I am getting the following message:- Could not place the document 'IMG_1664.MOV' because no parser or file format can open the file. The video was shot on my iphone 4S and ive even tried c

  • Apple Adapter Exchange

    I currently reside in Calgary, Canada and I just came back from vacation in Honolulu, HI from where I purchased an adapter from the apple store for my apple macbook, unfortunately the sales person gave me the wrong one because now I realize it is not

  • External Data Transfer KCLJ for Loans- Incorrect receiver Records

    I am doing some test migration for FS-CML Loans area. I am using the delivered sender program TR_DARL, and transfer structure JBIUDA1. I have created the source file according to the receiver structure, and when uploaded using transaction KCLJ, the w

  • Is it possible to send SMS through java

    Hi all I m a student and as a part of my project I need to create an SMS server(SMS gateway). Can we send SMS through Java and if yes then send me the code for the same . Also on which GSM Modem will it Work , I've heard about Nokia GSM Modem N32. Ki