Apex 4.1 Custom error function and page rendering

Hi
I have setup a demo application at http://apex.oracle.com/pls/apex/f?p=19820:1 which is a simple testing application for testing of the apex_error_handling_example function Patrick wolf put into Oracle documentation. I have setup a error on the page rendering of page 2 in the application. The error process contain this simple error code declare
v_id number;
begin
select 'x' as one into v_id from dual;
end;
which generate plsql numeric or value error. The process is running before regions on page rendering on page 2. I have also created the same error process on page processing before DML processing on the page. When i insert apex_error_handling_example into the application level and run the application the error is not caught and the page is rendered as nothing was wrong. When the page is submitted the error function is executed and work correct.
When i remove the error function from the application the error is caught and displayed on the APEX error page with the detail link for drill down to show more about the error.
Any which can tell what is wrong with the setup i have done. The error function apex_error_handling_example setup is simply a copy/paste from the documentation with some few debug message put into a logging table.
kindest regards
jon

Hi
Yes, when you submit the page the page processing is displaying the error message inline, but it does not show the same error on page rendering for page 2, if i remove the custom error function it will show the error on APEX separate error page. The debug output from the page 1 is as following:
0.12084     0.00345     ...metadata, fetch items     4     
5
     0.12431     0.00146     Show page template header     4     
2
     0.12576     0.00152     Rendering form open tag and internal values     4     
2
     0.12728     0.00034     Computation point: After Header     4     
1
     0.12767     0.00040     Processes - point: AFTER_HEADER     4     
1
     0.12801     0.00508     ...Process "Fetch Row from DEMO_CUSTOMERS" - Type: DML_FETCH_ROW     4     
8
     0.13312     0.00242     ...Execute Statement: begin begin select ROWID,"CUSTOMER_ID","CUST_FIRST_NAME","CUST_LAST_NAME","CUST_STREET_ADDRESS1","CUST_STREET_ADDRESS2","CUST_CITY","CUST_STATE","CUST_POSTAL_CODE","PHONE_NUMBER1","PHONE_NUMBER2","CREDIT_LIMIT","CUST_EMAIL" into wwv_flow.g_column_values(1),wwv_flow.g_column_values(2),wwv_flow.g_column_values(3),wwv_flow.g_column_values(4),wwv_flow.g_column_values(5),wwv_flow.g_column_values(6),wwv_flow.g_column_values(7),wwv_flow.g_column_values(8),wwv_flow.g_column_values(9),wwv_flow.g_column_values(10),wwv_flow.g_column_values(11),wwv_flow.g_column_values(12),wwv_flow.g_column_values(13) from "OLE1923"."DEMO_CUSTOMERS" where "ROWID" = :p_rowid; end; end;     4     
4
     0.13552     0.00038     Computation point: Before Box Body     4     
1
     0.13590     0.00032     Processes - point: BEFORE_BOX_BODY     4     
0
     0.13621     0.00051     ...Process "gen error" - Type: PLSQL     4     
1
     0.13672     0.00142     ...Execute Statement: begin declare v_id number; begin select 'x' as one into v_id from dual; end; end;     4     
2
     0.13814     0.00052     Add error onto error stack     4     
1
     0.13866     0.00048     ...Error data:     4     
1
     0.13914     0.00048     ......message: ORA-06502: PL/SQL: numeric or value error: character to number conversion error     4     
1
     0.13962     0.00049     ......additional_info: ORA-06502: PL/SQL: numeric or value error: character to number conversion error     4     
1
     0.14011     0.00048     ......display_location: ON_ERROR_PAGE     4     
1
     0.14059     0.00047     ......is_internal_error: false     4     
1
     0.14106     0.00073     ......ora_sqlcode: -6502     4     
1
     0.14179     0.00048     ......ora_sqlerrm: ORA-06502: PL/SQL: numeric or value error: character to number conversion error     4     
1
     0.14227     0.00049     ......error_backtrace: ORA-06512: at line 6 ORA-06512: at "SYS.DBMS_SYS_SQL", line 1926 ORA-06512: at "SYS.WWV_DBMS_SQL", line 966 ORA-06512: at "SYS.WWV_DBMS_SQL", line 992 ORA-06512: at "APEX_040100.WWV_FLOW_DYNAMIC_EXEC", line 649 ORA-06512: at "APEX_040100.WWV_FLOW_PROCESS", line 129      4     
1
     0.14276     0.00050     ......component.type: APEX_APPLICATION_PAGE_PROCESS     4     
1
     0.14326     0.00079     ......component.id: 64815543714133426115     4     
1
     0.14405     0.00058     ......component.name: gen error     4     
1
     0.14463     0.00067     ...Execute Error Handling Callout defined on Page or Application Level     4     
1
     0.14530     0.00184     ...Execute Statement: begin declare l_error wwv_flow_error.t_error; begin l_error := wwv_flow_error.g_error; wwv_flow_error.g_error_result := apex_error_handling_example ( p_error => l_error ); end; end;     4     
3
     0.14714     0.00055     ......Values changed by callout:     4     
1
     0.14769     0.00049     .........message: MY.....MY ERROR PL/SQL: numeric or value error: character to number conversion error     4     
1
     0.14818     0.00065     .........display_location: INLINE_IN_NOTIFICATION     4     
1
     0.14883     0.00331     Region: Form on DEMO_CUSTOMERS     4     
5
     0.15214     0.00174     Item: P2_ROWID NATIVE_HIDDEN     4     
3
     0.15388     0.00090     Item: P2_CUSTOMER_ID NATIVE_NUMBER_FIELD
The debug output show that the custom error function is running and changing the display location from ON_ERROR_PAGE to INLINE_IN_NOTIFICATION, but there is something going wrong in this processing.
jon

Similar Messages

  • I have been working on a file in pages which I cannot open now. Every time I select it "an error occurred and pages must close" appears. Files sharing in itunes doesn't work either. Any suggestions?? THANK YOU

    I have been working on a file in pages which I cannot open now. Every time I select it "an error occurred and pages must close" appears and pages shuts down. I have tried to duplicate the document but cannot open the copy either. I am unable to email, share via iwork, itunes, idisk or WebDAV all of these options just close pages down. Does anyone have any ideas......Thank you

    And you are quite persistent, Menu Boy, in offering pernickety and pointless prattle, in response to a "support page" on iPad's buggy Pages App.
    Let's summarise, for those reviewing this threadless thread for app support..
    Mobile pages works reliably for simple docs, especially creating letters and Menus for Microsoft's Kindy canteen (even on special days with nice big pictures).
    When importing more complex docs and/or working with larger creations, it is prone to randomly corrupting files upon re-opening, along similar lines as Word (running on a PC).
    So, Menu Boy, do they let you sneak into classes every now and then? What is the secret to their training? "Say after me, if any I.T. product works just some of the time, that's a job well done, and if something randomly stops working, we call that the user's fault... And if they complain, we call them names."

  • Why is connection speed and page rendering so much slower in FF 3.6.13?

    After installation of the 3.6.13 upgrade, website connection and page rendering speed became significantly slower than in all previous versions. I searched the knowledge base and Forum and found this post:
    http://support.mozilla.com/en-US/questions/668695#answer-108852
    After changing settings as described in the post, speed was easily more than doubled.
    I'm wondering if anyone else has experienced the slowdown in connection and rendering speed with 3.6.13. And also why, if the settings worked so well for me, they aren;t standard in FF?

    http://www.nasdaq.com/asp/quotes_news.asp?cpath=20040608\ACQBIZ200406080001BIZWIRE_USPR_____BW6209.htm&symbol=amd&selected=amd&kind=&mode=basics&formtype=&mkttype=&pathname=&page=news

  • Customized error messages and error handling?

    Hi All ,
    how can we Customized error messages?
    and how we can do error handling in Sibel Analytics ?

    The ADF Developer Guide has a section about "Handling and Displaying Exceptions in an ADF Application", this will explain how to display errors in a new page.
    All you need to do is have the navigation to this page use the dialog framework.

  • Customizing Portal tabs and pages

    hi,
      I am trying to customize the portal for BI. We would like to remove completely the stanard functionality and put only two tabs one Home and another tab "BI". So, i created two pages by name "Home" and "BI". and also i created a workset and kept these two pages in the workset and attached this workset to the role and attached the role to the test user ABC.
    After i have done this, i logged in as test user ABC. Nothing is visible. Do i need to do some settings in permissions or any where else so that the test user can see only two tabs like Home and BI and under Home , he would like to see "Home" Page and under BI "BI" page.
    Please advise.
    Thanks in advance....

    Dorson,
    you need to assign end user role to the user to make Home role visible for that user.
    coming to custom role did you set the entry point of role to yes
    Thanks
    Bala Duvvuri

  • Error Handler and Page Bindings

    Hi,
    I have a task flow with an error-handler defined. Any action-binding method calls which throw exceptions from the business layer are handled nicely by the error handler. The same doesn't happen though when the binding is in the page, tied to a button (as created when you drag a method from the data control palette onto the page). The exception is instead displayed in the calling page. What am I missing here?
    Thanks,
    Barry.

    Hi,
    the ADF Controller catches excptions occuring while it processes an activity. If JSF catches the exception then this does not involve navigation and therefore the message displays on the page
    Frank

  • Raw HTML and Page Rendering Issue happening at Random

    We are an internet retailer (BettyMills.com) and recently started having customers and our internal users reporting two issues.
    It is random, but due to the high volume of traffic on our website, it is a high enough frequency to be very troubling.
    The webpage does not fully render, and the customer sees a dump of the page without formatting, just a listing of all the links on our page and the images dumped out and out of place.
    We thought this was initially a comcast DNS issue, but seems it is happening beyond that.
    I'm on Firefox 19.x and I've never had the issue, but I've witnessed it on about half dozen of our staff computers and external customers.
    Has anyone seen this issue or any way to know how to trouble shoot it?
    We can't recreate it on demand so very difficult to debug it.
    Vic

    Attached is an image..
    -Vic

  • Report and Page Rendering question

    Hi,
    I have a report page that I've added a new region for entering search criteria. Everything is working fine, except one small thing. When the page loads for the first time, it still returns all rows just as it did before I added the criteria region. How can I change the report so no rows are returned during the pages initial rendering, but only when the criteria is submitted?
    Best Regards,
    Brian Peasey

    The easiest thing would be to put a condition on the report region to only display when PX_SEARCH is not null.

  • Custom error handler examples and/or instruction

    I'm finishing up an application and would like to customize some of the error reporting.
    I've started playing around with the custom error handler VI's with some success. I would, however, like to see some examples from people who know what they are doing (unlike me).
    As always, your feedback is appreciated.
    Todd

    Look at this message.
    http://forums.ni.com/ni/board/message?board.id=170&message.id=45649
    Do a search for "General Error Handler" and you'll find some others.
    I'm also trying to find a simple way to define custom error codes and descriptions in an error cluster. I can produce my codes easily enough using the vi posted by Aristos Queue in the message noted above. I can also display my user-defined descriptions using a dialog, but I haven't found an easy way to make the user-defined descriptions in the array appear in the error cluster.
    Any help on this would be appreciated.
    Attachments:
    Error_Demo.vi ‏37 KB

  • Custom aggregate function inside a package.

    Hi there,
    I'm trying to write a custom aggregate function and group that function inside a package together with some other functions that I have. As an example (to simulate the problem I have) suppose my custom aggregation to do a summation of numbers looks like:
    CREATE OR REPLACE TYPE SUM_AGGREGATOR_TYPE AS OBJECT (
    summation NUMBER,
    STATIC FUNCTION ODCIAggregateInitialize(agg_context IN OUT
    SUM_AGGREGATOR_TYPE) RETURN NUMBER,
    MEMBER FUNCTION ODCIAggregateIterate(self IN OUT SUM_AGGREGATOR_TYPE,
    next_number IN NUMBER) RETURN NUMBER,
    MEMBER FUNCTION ODCIAggregateMerge(self IN OUT SUM_AGGREGATOR_TYPE,
    para_context IN SUM_AGGREGATOR_TYPE) RETURN NUMBER,
    MEMBER FUNCTION ODCIAggregateTerminate(self IN SUM_AGGREGATOR_TYPE,
    return_value OUT NUMBER, flags IN NUMBER) RETURN NUMBER
    CREATE OR REPLACE TYPE BODY SUM_AGGREGATOR_TYPE IS
    STATIC FUNCTION ODCIAggregateInitialize(agg_context IN OUT
    SUM_AGGREGATOR_TYPE)
    RETURN NUMBER IS
    BEGIN
    agg_context := SUM_AGGREGATOR_TYPE(NULL);
    RETURN ODCIConst.Success;
    END;
    MEMBER FUNCTION ODCIAggregateIterate(self IN OUT SUM_AGGREGATOR_TYPE,
    next_number IN NUMBER)
    RETURN NUMBER IS
    BEGIN
    IF self.summation IS NULL THEN
    self.summation := next_number;
    ELSIF summation IS NOT NULL THEN
    self.summation := self.summation + next_number;
    END IF;
    RETURN ODCIConst.Success;
    END;
    MEMBER FUNCTION ODCIAggregateMerge(self IN OUT SUM_AGGREGATOR_TYPE,
    para_context IN SUM_AGGREGATOR_TYPE)
    RETURN NUMBER IS
    BEGIN
    self.summation := self.summation + para_context.summation;
    RETURN ODCIConst.Success;
    END;
    MEMBER FUNCTION ODCIAggregateTerminate(self IN SUM_AGGREGATOR_TYPE,
    return_value OUT NUMBER, flags IN NUMBER)
    RETURN NUMBER IS
    BEGIN
    return_value := self.summation;
    return ODCIConst.Success;
    END;
    END;
    If I write the following function definition:
    CREATE OR REPLACE FUNCTION MY_SUM(input NUMBER)
    RETURN NUMBER PARALLEL_ENABLE AGGREGATE USING SUM_AGGREGATOR_TYPE;
    and corresponding type declaration to test:
    CREATE OR REPLACE TYPE VECTOR
    IS
    TABLE OF NUMBER;
    this statement:
    select my_sum(column_value) from table(vector(1, 2, 1, 45, 22, -1));
    gives the correct result of 70. However, creating a package with the function definition:
    CREATE OR REPLACE PACKAGE MY_FUNCTIONS AS
    FUNCTION MY_SUM(input NUMBER)
    RETURN NUMBER PARALLEL_ENABLE AGGREGATE USING SUM_AGGREGATOR_TYPE;
    END;
    and calling it via:
    select MY_FUNCTIONS.my_sum(column_value) from table(vector(1, 2, 1, 45, 22, -1));
    explodes with:
    ORA-00600: internal error code, arguments: [17090], [], [], [], [], [], [], [], [], [], [], []
    Is it possible to have custom aggregate functions nested inside package declarations?
    I'm using Oracle 11g, Release 2 (11.2.0.1.0).

    HiddenName wrote:
    Is it possible to have custom aggregate functions nested inside package declarations?Yes, it is possible, you have succesfuly created your function. Your problem is that the database throws ORA-600 on execute. And with ORA-600 you can do 2 things: 1) google ORA-600 17090 or 2) contact your Oracle Support.
    You could also try to declare the function without PARALLEL_ENABLE - just to try to see if it changes anything. You can also try to call your function against a regular table with rows and columns - not against an collection type with table() operator.
    Anyway - these 2 tests should be usefull for Oracle Support.
    I never tried to put a custom aggregate function into a package. First - the cases when you need a custom aggregate function to be written for your system are very rare. Second - even if I needed 1 then I never needed 2 or more custom aggregate functions on my system. And as I do not like to make my life more complex than necessary, I have created it as a stand-alone function. And it is works (slowly).I tried using a standard table as you suggested:
    CREATE TABLE TEST_DATA
    test_value NUMBER
    INSERT INTO TEST_DATA
    (SELECT column_value test_value from TABLE(vector(1, 2, 1, 45, 22, -1)));
    COMMIT;
    select my_sum(test_value) from test_data;
    select my_functions.my_sum(test_value) from test_data;
    I also tried removing the PARALLEL_ENABLE clause to create the package as follows:
    CREATE OR REPLACE PACKAGE MY_FUNCTIONS AS
    FUNCTION MY_SUM(input NUMBER)
    RETURN NUMBER AGGREGATE USING SUM_AGGREGATOR_TYPE;
    END;
    And unfortunately it still breaks with the following error: SQL Error: ORA-00600: internal error code, arguments: [17090]. This looks like an Oracle bug to me as the PL/SQL parsing engine should have disallowed me to even create this if it is not supported in Oracle. Instead, it allows me to create the package, and breaks when I call the function with this weird error (additionally cutting my connection from the database) instead of disallowing me to do this altogether and printing a nice error message telling me that Oracle doesn't support this. How would I go about logging a ticket for this?
    Edited by: wcmatthysen on Dec 1, 2010 12:51 PM

  • Custom Java Function in BI Publisher

    Hi -
    Is it possible in BI Publisher to create a custom java function and call this function in RTF template?
    Thank You

    I was able to test it using Template Builder for MSWord , but when I try to upload it in BI Publisher Server, I am encountering error.

  • ADF11g+ Custom error handler

    Hello,
    I am using Build JDEVADF_11.1.1.2.0_GENERIC_091029.2229.5536
    I defined the custom error handler as mentioned in the ADF development guide.Facing weired issue when AM method is called from task flow.
    e.g,
    AM method
    public showSuccessMessage(){
    this.getDBTransaction().addWarning(new JboWarning("Hello Sample message from AM"));
    Above method is called from taskflow and corresponding action is specified in the page.I have task flow ErrorHander activity defined for the task flow also.When I click the button to call the AM method,Jbo warning raised in AM and catched by the task flow error handler and after this control is passed to CustomErrorHandler and message shows properly.But this happens only first time.After that control never goes to custom error handler. Am I missing some thing??
    Any idea why??
    Thanks
    RB

    Hi Frank,
    Thanks
    What I noticed is,
    Case:1
    when warning is raised using the addWarning api from AM, binding layer throws exception of type Warning,catches in task flow error handler and directly goes to get getDisplay message method of the custom error handler which is defined in databinding.cpx only once.After that it catches in taskflow error handler and never goes to custom error handler defined in data binding.cpx
    Case2:
    When I raised it as throw new JboException flow goes reportException of custom error handler and which calls the getDisplay message.In this it even not going to task flow error handler.
    If you can confirm this is expected behavior or it is bug that would be great,it helps us define the exception handling framework.
    Thanks
    RB

  • Global error page - compatible with partial page rendering

    My global error page doesn't show in some isolated cases. Could this be because of partial page rendering? What changes might be needed to have it work in all cases?
    I have created a global error page and set it in the web.xml with:
    <error-page>
    <exception-type>java.lang.Exception</exception-type>
    <location>pages/htmlErrorPage.html</location>
    </error-page>
    This displays the htmlErrorPage when errors occur in nearly all my tested cases. However, when the test error is created inside one page redraw I find that the application dies without ever displaying my error page. On the console I get an error message that starts with:
    Jun 13, 2008 12:54:11 PM oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer encodeAll
    SEVERE: Error during partial-page rendering
    javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'com.softrek.adf.view.managed.JFreeChartPlotter'.. class com.softrek.adf.view.managed.JFreeChartPlotter : java.lang.NullPointerException
         at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:190)
         at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:143)
    But my error page doesn' t show up. I've used the identical test error in most other parts of my application and it shows - so other than the partial page rendering going on, I can't see why this case would be different.
    Is there any known bug (or feature) about the use of an error page during partial page rendering?
    Any ideas will be welcome.

    I'm unclear on how I would get the error to redirect.
    I've changed my web.xml to go to a servlet of my creation, set up the mapping and all.
    It works fine for exceptions generated in a backing bean normally.
    When the exception occurs as part of partial page rendering the error servlet is not called and the user's session dies.
    This is being done in JDeveloper 10.1.3.3
    The new web.xml contains:
    <error-page>
    <exception-type>java.lang.Throwable</exception-type>
    <location>/servlet/errorAction</location>
    </error-page>
    Which is working for errors generated under most circumstances but not when they are inside my partial page change.
    How do I get errors to go to my error page when the error occurred during PPR?
    PS. Using the PartialPageUtils.isPartialRequest() method generated a recursive error in my error servlet. This looks like the known limitation for Faces error handling.

  • Custome Partner Function from SD to CO-PA

    Hi,
    I have created 3 custom partner functions and have assinged in customer master. I need these 3 custom partner function to be transfered to CO-PA during billing. Is there a easy way around to achieve this, coz there are some SAP notes which are sort of confusing and complex, since we are already live in production, we cant take a chance on the SAP Note.
    If somebody experienced like this, could you please share the knowledge, how to achieve this.
    Thanks.
    With Regards
    gj

    Hi Gj,
    There are no simple way around to get the customer partner function in to CO-PA during billing. You must follow the notes to get the correct value transfered to CO-PA. I will outline the steps below so that you do not miss anything.
    I am going to try to summarize the basic steps to add one or
    more new partner function(s).  For more detailed information
    please see the notes 36557, 32878, 12682 and 93658 although some o
    these notes are known for you.
    Add new domain/data element for the new partner function in the
    ABAP/4 Data Dictionary.
      Examples are the data elements KUNAG, KUNWE, KUNRE, KUNRG,
      SPDNR, and VRTNR in structure MCPARTNER. This is where the
      partner functions for the Standard Sales Information System are
      defined.
    Save the new partner field in structure MCPARTUSR (user part of
      structure MCPARTNER) or, if available extend structure
      MCPARTUSR by an append structure (ZAMCPARTUS).
    Make sure that the check tables and foreign key relationships are
      maintained for the new fields in structure MCPARTUSR
    Define the assignment of partner function <  > new partner
      field in the communication structure.
      Program RMCSUZ10, routine USR_PARTNER_GET.
      Add the line as in the example of note 12682 given.
    Include the corresponding field via transaction 'KEA0' from the
      structure PAPARTNER into the Profitability Analysis data structures
    If your new partnerrole is a representative/sales employee please
      apply note 32878.
    Should you have implemented note 43002 (to prevent a field overflow
      in pricing) please follow note 93658 and use userexit
      userexit_pricing_prepare_tkomp instead of
      userexit_pricing_prepare_tkomk.
      userexit_pricing_prepare_tkomp is contained in Include MV45AFZZ
      (sales order) and RV60AFZZ (billing)
    Add the new field to the structure 'KOMPAZ' as in note 93658
      described and  NOT  to the structure 'KOMKAZ' (note 36557)
      (you have used both structures)
    Generate the operating concern and check if the following entries
      are included in TKEZU:
      Charact.  BTran Table      Field name  Offset  Length
      XXXXX     KEDR  KOMP      YYYYY
      XXXXX     KEDR  KOMP      YYYYY
      XXXXX     KEDR  KOMP      YYYYY
      XXXXX = Field name of the partner function in the  profitability
      analysis
      YYYYY = Field name of the partner function in structure KOMP
    (these entries should be made automatically here).
    If you need more than one partner function please repeat the
    steps as described above for your need.
    Regards,
    Abhisek

  • Help for custom Partner Function

    Hi,
    I'm on SRM 5.0 ECS.
    I create two custom partner function and now I need to add they a search help.
    How can I do this?
    I will take data from R3, but I know how to build a search help, I need to know how give it to the partner function.
    thanks
    enzo

    I solved.

Maybe you are looking for

  • 9.2.0.6 runInstaller cannot write into its own installation directory

    I would like to install the 9.2.0.6 patchset on a freshly installed 9.2.0.4_linux_x86_64 (AMD). The system is RedHat EL AS 3. I have installed j2re1.4.2_07 (because the Java brought by Oracle does not even start the VM ...) and edited the ./install/o

  • Invoice Different Vendors

    Hi Experts, I'm trying to rack my brain around a certain issue I'm having: So we create a purchase order lets say we buy parts from company "ABC" in which we pay with our credit card through US Bank. We Use the Copy to function to copy it over to a G

  • In Labview 8.5, what happens if the signal input exceeds the signal input range set by the DAQ Assistant?

    Hello all, This should be a pretty simple question, but I can't seem to find the answer on-line and don't currently have the capabilities to test this: I'm using LabVIEW 8.5 and have a VI that imports sensor data through the DAQ Assistant. In the con

  • PLD Problem: House Banks

    Hi Friends, I have a problem with designing PLD using BP default house bank,House Bank and Banks table. How do we display the following fields? 1)     House Bank Name 2)     House Bank  Address 3)     Account Number 4)     Swift Code 5)     IBAN no T

  • Lightroom 4.x can't start because .DLL is missing from computer

    Hi everyone I recently had to repair my Windows Home 7 Premium. Since the repair, a number of programs would not start...this System Error dialog appears: The program can't start because .DLL is missing from your computer. Try reinstalling the progra