Tax code failed iExpenses based on the location and type of expenditure

Hi all

I have a requirement in Internet Expenses (11.5.10) by default the code based on taxes
the type of expenditure and the location. I store the mappings between the expense type + location-> tax code
in a database table custom.

I decided I need to extend the page controller
/ Oracle/Apps/AP/GOOSE/Entry/Lines/WebUI/DetailsPG which is DetailsPageGlueCO.java.

My plan is to expand the page controller...

(1) intercept the PPR events on the type of expenditure and the location LOV
(2) to obtain the values of expense type and location using calls to row.getattribute
(3) create a VO customized on the fly to search the tax code by default for this type of expense and the location
(4) use row.setattribute to update the tax code

I have extended the controller and am running in debug mode in Jdeveloper and I can confirm that
the custom controller is running.

First, I hit, it's that I can't get a handle on the view for the page object.
The code I use is...

' Public Sub processFormRequest (pageContext OAPageContext, OAWebBean webBean)
{

super.processFormRequest (pageContext, webBean);

Am = (OAApplicationModule) pageContext.getApplicationModule (webBean) OAApplicationModule;
OAViewObject expVO = (OAViewObject) am.findViewObject ("ExpenseReportLinesVO");

After these expVO lines have run is null
I tried to change the reference to ExpenseReportLinesVO1 VO, but the original Version is still missing.

Please can you point me in the right direction?

Also please comment on my proposed approach to this customization.


Thank you very much
Andy

Hi Andy,.

(1) you weren't able to get the reference am as controller "DetailsPageGlueCO" is set to "pageLayout" region for OAWebBean object is reference to "pageLayout" region. Now using the line of code
Am = (OAApplicationModule) pageContext.getApplicationModule (webBean) OAApplicationModule;
We will go am region reference "pageLayout' which is 'WebExpensesAM '.

Since we need to reference "OIECommonAM" we need to get the OAWebBean of the StackLayout region object. That's why we need to use
OAWebBean oawebbean1 = oapagecontext.getPageLayoutBean () .findChildRecursive ("StackLayout");

(2) to get the value of ExpTypeChoice use code below: (not tried your approach)

OAMessageChoiceBean oamessagechoicebean = (OAMessageChoiceBean) oawebbean.findChildRecursive ("ExpTypeChoice");
If (oamessagechoicebean! = null & oamessagechoicebean.getSelectionValue (oapagecontext)! = null)
ExpTypeVal = oamessagechoicebean.getSelectionValue (oapagecontext);

(3) TaxCodeId use code below:

ExpenseReportLinesVOImpl reportlinesvo = (ExpenseReportLinesVOImpl) am.findViewObject ("ExpenseReportLinesVO");
If (reportlinesvo! = null)
{
ExpenseReportLinesVORowImpl reportlinesrow = (ExpenseReportLinesVORowImpl) reportlinesvo.getCurrentRow ();
If (reportlinesrow! = null)
{
reportlinesrow.setTaxCodeId (); We must move the Number data type for this method
}
}

Kind regards
Anand

Tags: Oracle Applications

Similar Questions

  • Can I make smart albums based on the location?

    Can I make smart albums based on the location of the GPS?

    For example, in the street, city, etc.?

    Thank you

    [City] - includes the menuFichier ==> new smart album - text or text [Street] etc.

    LN

  • Cisco Jabber call privilege based on the location

    Hi team,

    a customer asks to change the privilege of call user for Cisco Jabber Extension based on the location to have Mobile call privileges if they are covered by the local Access Point and internal call privilege if they are registered on the Internet

    y at - it an idea how to. ?

    Characteristic of mobility to implement in CUCM device, it does exactly what you ask.

    Chris

  • How to choose a Rotator ad based on the location of users

    I have the following requirement and do not know how you can achieve what no main script is allowed in British Colombia

    On each page a set of ad rotators are displayed based on the location of users - this could be a casual user, wandering on the web site or of a registered member.

    There are more than 400 regions of advertising (lets just call them cities).  When a user walks on the web site, we know the IP address and can then determine the city with external services.

    Now that we know the city the person comes, we want to present the page with the correct sequence.

    It's obviosly not a good idea to load 400 banner ads and expose the required.

    Can someone help me with this problem?

    I'm no expert on JSON/JQuery/AJAX etc, a few examples would be appreciated.

    Thanks in advance

    You can go this way:

    -Create a folder where you create pages for each banner, something like/banner/london.html, /banner/newyork.html and so on

    -place an adrotator on each page

    -on the model where you need to have made banner insert the script that you use to determine the exact location of the user and the name of the city translates

    -create a .js which takes the name of the city and jQuery.load () the corresponding page in the folder banner, here are a few examples of the load method - http://www.w3schools.com/jquery/ajax_load.asp

    I hope this helps!

    PS - you can even have a single page for all the adrotator, each wrapped in a div with a unique ID 'city' and load the div containing the necessary adrotator, something like:

    {module_adrotator, 15264}

    {module_adrotator, 15265}

  • Get the number of days in a month based on the month and year of fields

    I have a column in my form which lists the days in a month. I want to configure a hidden field that calculates the total number of days in a month, based on the month and year of the field inputs. The number of days will determine what appears on the column. For example, if I put 4 months, and 2016 in the field of the year, I get 30 in the hidden field. Thus, on the column 'Day', I'll have numbers 1-30. Or if I put 2 months and 2016 in the field of the year, I get the 29 in the hidden field. If the numbers 1-29 appears in the column 'day '.

    Found this on some forum javascript code:

    //Month is 1 based
    function daysInMonth(month,year) {
      
    return new Date(year, month, 0).getDate();
    }

    //July
    daysInMonth
    (7,2009); //31
    //February
    daysInMonth
    (2,2009); //28
    daysInMonth
    (2,2008); //29

    I do not know how to convert this code in JavaScript to adobe and don't really know how to use it. All I know how to do is to configure the field values for the field month and year as variables. I am a novice programmer and would appreciate it really all the help I can get. Thank you in advance!

    The code seems to be JavaScript and runs as needed by using the JavaScript console.

    I would like to consider making more general code, so if you have a date string that includes at least the month and year we could just call the function and get the number of days for that month.

    The following script will calculate the number of days in a month, by using at least the month and year values can display the result on the JavaScript console and all of the value field for the field that has this code as the custom calculation Script.

    function daysInMonth (oDate) {}
    return new Date (oDate.getFullYear (), oDate.getMonth () + 1, 0) .getDate ();
    }

    nMonth var = this.getField("Month").valueAsString; get the value of month;
    nYear var = this.getField("Year").valueAsString; get the value of the year;

    Event.Value = "";

    If (nMonth! = "" & nYear!) = "") {}
    var MyDate = util.scand ("' / mm/yyyy ', nMonth +" / "+ nYear); convert to date object;
    var nDaysInMonth = daysInMonth (MyDate); get the number of days;

    Console.Open (); Open the JavaScript console;

    Console.clear(); clear the console;

    Console.println ("Days in" + nMonth + ":" + nDaysInMonth); show days in month;

    Event.Value = nDaysInMonth; Set the value of the field;

    }

  • I deleted the files from my office, they are still there and I can't delete them again cos keep telling me to check the location and try again

    I deleted the files from my office, they are still there and I can't delete them again cos keep telling me to check the location and try again

    Hi fwhaddad,

    Please take a look at the spirit x possible 2nd answer in the thread for a solution:

    http://answers.Microsoft.com/en-us/Windows/Forum/Windows_7-files/cant-remove-a-folder-because-its-not-there/eba2d232-33d7-43BD-a3dc-1f06292552b2

  • Enter the location and size of box guide

    I know how to get the location and size of a selected object.

    var artWidth = artGroup.width;
    var artHeight =artGroup.height;
    var artLeftPos = artGroup.pos[0];
    var artTopPos = artGroup.pos[1];
    

    but all my models have only one box and that the box is always centered on the artboard, but its position is upwards or downwards to the Center.  Is it possible to check if the box has been changed to guides on the view menu. View > Guides > Guides to do, it of what I'm talking about after removing the color of background and outline of your object to ensure that it can be used for sizing and position of your work, but do not print.  I need something like below who will go through all elements of the path until the element is a guide is so it makes the variable myGuideBox for me to grasp its size and position so that I can double check it against what the user initially selected.

    I read through the view of the object and the site http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/illustrator/sdk/CC2014/Illustrator% 20Scripting % 20Reference % 20-% 20... but I can't find anything to say whether or not an object is a guide.  If it is not possible, this means that I'll have to find another option, and I'm open to ideas.

    for (i=0;i<docRef.pathItems.length;i++)
    {
         if (doc.pathItems[i].guide == true);
        {
             var myGuideBox = doc.pathitems[i];
    }//end if
    }//end for
    

    Thanks in advance for any ideas or pointers that you can give me.

    Zantcor wrote:

    n ' have only one box of guide

    -go through all the elements path until the only element that is a guide is located then it makes the variable myGuideBox for me to grasp its size and position

    If you say that there is only 1 guide in the file, then maybe the following simple example will work:

    function getGuideBox() {
        app.activeDocument.selection = false;
        var doc = app.activeDocument;
        var p = doc.pageItems;
        for (var i = 0, l = p.length; i < l; i++) {
            var pID = p[i];
            if (pID.guides == true) {
                pID.locked = false;
                pID.selected = true;
            }
        }
        var guideBox = doc.selection[0];
        var wNum = guideBox.width;
        var hNum = guideBox.height;
        var xNum = guideBox.position[0];
        var yNum = guideBox.position[1];
        alert("GuideBox Data:\nWidth: "+wNum+"\nHeight: "+hNum+"\nX Position: "+xNum+"\nY Position: "+yNum);
    }
    getGuideBox();
    

    I hope it's useful.

  • Extract data based on the year and month

    My clients have taken a field TimeStamp DB Oracle and downloaded the access in a TEXT field format.
    Samples: 20060401001348CS

    Everything I'm doing is extracted from the data based on the year and the month. I equal to 200604 *, 200604%. Have also tried to use AS.
    Nothing works. It may just be that dificult. Help, please. Thank you

    Mike

    I'm SO sorry. I have 35 years of Experinece in this area and I have my data (assuming) was all a 200604 date and he was not. The query did work. I'll have more questions and that you do not want to loose credability with this site. Again, I am sorry. Sincere to help thanks.
    Ron

  • I need serious help please... We do translations of textbooks, I searched an excessive type function but have been unable to find, we are working in indesign CS 5. It takes allot of time to delete the text and type in the new language.

    I need serious help please... We do translations of textbooks, I searched an excessive type function but have been unable to find, we are working in indesign CS 5. It takes allot of time to delete the text and type in the new language.

    Argh it's frustrating! I never noticed that the key was not working in InDesign.

    A bit of research and it turns out that the MS Office has this as an option in their software. But I can't find an option in the InDesign preferences to make it work.

    However, somethings do not appear in the shortcuts and preferences and are hidden triggers in InDesign that are accessible via a script.

    I'm not saying that it is possible to activate the button insert by using a script, but it is plausible that he can be activated.

    Maybe ask on the forum script? Scripting InDesign

    I know that this may be a possibility as with InDesign prior to export PDF documents interactive versions, there was previously no way to export PDFs interactive as unique pages if the gaps of.

    But the option to toggle this setting was scriptable.

  • people of connection based on the location code

    version 11g
    WE_PID = ID BELONGS TO PERSON(WHICH WE ASSIGNED WRONGLY IN THE BELOW SCENARIO) 
    WE_ADDR_ID = PERSONS ADDRESS
    
    -- We should Assign same we_pid to all persons with has same address
    
    CREATE TABLE WE_PEOPLE_TMP
    (
      WE_PID       NUMBER                         
      WE_ADDR_ID   NUMBER                          
      LAST_NAME    VARCHAR2(60 BYTE),
      FIRST_NAME   VARCHAR2(50 BYTE),
      MIDDLE_NAME  VARCHAR2(50 BYTE)
    );
    
    SET DEFINE OFF;
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (62300618, 25129623, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (62300618, 25410057, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (62300618, 295522728, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (355485171, 125174760, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (355485171, 295346806, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (355485171, 316497921, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (355485261, 125174760, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (449096445, 125174760, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (449096445, 383297005, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (455841849, 25410057, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (455841849, 125174760, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (455841849, 385548445, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (455841849, 397583155, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (465554960, 76332253, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (465554960, 125174760, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (465554960, 385511575, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (465554960, 385511576, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (465775707, 125174760, 'AMATUZIO', 'ALBERT', 'J');
    COMMIT;
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (12345, 876781, 'AMATUZIO', 'ALBERT', 'J');
    Insert into WE_PEOPLE_TMP
       (WE_PID, WE_ADDR_ID, LAST_NAME, FIRST_NAME, MIDDLE_NAME)
     Values
       (75707, 299999, 'AMATUZIO', 'ALBERT', 'J');
    COMMIT;
    
    
    
    IF YOU QUERY THE TABLE YOU CAN SEE 
    -- 62300618 LINKED TO 455841849 WITH WE_ADDR_ID 25410057
    -- 355485171 LINKED TO 449096445 , 455841849,465554960,465775707 WITH WE_ADDR_ID 125174760
    -- 355485261 LINKED TO 355485171,449096445,455841849,465554960,465775707
    -- 449096445 LINKED TO 355485171,455841849, 125174760,465775707
    -- 455841849 LINKED TO 62300618,355485171,355485261,449096445,465554960,465775707
    -- 465554960 LINKED TO 355485171,355485261,449096445,465554960,465775707
    -- 465775707 LINKED TO 355485171,355485261,449096445,465554960,465775707
    
    SO IF YOU SEE THIS , YOU CAN SAY 62300618 IS EQUAL TO 355485171,355485261,449096445,465554960,465775707
    
    Please help me in building this query
    
    O/p Required
    WE_PID    WE_ADDR_ID    LAST_NAME    FIRST_NAME    MIDDLE_NAME
    
    12345       876781      AMATUZIO    ALBERT    J
    75707       299999      AMATUZIO    ALBERT    J
    62300618    295522728    AMATUZIO    ALBERT    J
    62300618    25129623     AMATUZIO    ALBERT    J
    62300618    25410057     AMATUZIO    ALBERT    J
    62300618    316497921    AMATUZIO    ALBERT    J
    62300618    295346806    AMATUZIO    ALBERT    J
    62300618    125174760    AMATUZIO    ALBERT    J
    62300618    125174760    AMATUZIO    ALBERT    J
    62300618    125174760    AMATUZIO    ALBERT    J
    62300618    383297005    AMATUZIO    ALBERT    J
    62300618    385548445    AMATUZIO    ALBERT    J
    62300618    125174760    AMATUZIO    ALBERT    J
    62300618    397583155    AMATUZIO    ALBERT    J
    62300618    25410057     AMATUZIO    ALBERT    J
    62300618    385511576    AMATUZIO    ALBERT    J
    62300618    385511575    AMATUZIO    ALBERT    J
    62300618    76332253     AMATUZIO    ALBERT    J
    62300618    125174760    AMATUZIO    ALBERT    J
    62300618    125174760    AMATUZIO    ALBERT    J

    Hello

    Sorry I had not a chance to do it sooner.
    Here is a way by using a WITH recursive (new in Oracle 11.2) clause:

    WITH     got_relatives (we_pid, we_addr_id , last_name, first_name, middle_name, root_we_pid)     AS
    (
         SELECT     we_pid, we_addr_id, last_name, first_name, middle_name
         ,     we_pid                 AS root_we_pid
         FROM     we_people_tmp
              --
        UNION ALL
              --
         SELECT     c.we_pid, c.we_addr_id, c.last_name, c.first_name, c.middle_name
         ,     p.root_we_pid            AS root_we_pid
         FROM     got_relatives     p
         JOIN     we_people_tmp     c  ON   (     c.we_pid       = p.we_pid
                                    AND   c.we_addr_id  != p.we_addr_id
                                 )
                           OR   (     c.we_pid      != p.we_pid
                                    AND   c.we_addr_id   = p.we_addr_id
                                 )
    )     CYCLE    we_pid
         ,      we_addr_id     SET is_cycle TO          'Y'
                                                 DEFAULT      'N'
    SELECT       MIN (root_we_pid)     AS min_we_pid
    ,       we_addr_id, last_name, first_name, middle_name
    FROM       got_relatives
    GROUP BY  we_pid
    ,            we_addr_id, last_name, first_name, middle_name
    ORDER BY  we_addr_id
    ;
    

    If you compare that to the CONNECT BY solution I posted above, you will see they are very similar. The condition connect THROUGH CONNECT BY matches the join condition of the solution in the solution WITH. You can consider the table alias p and c standing for 'parent' and 'child', or 'before' and 'connection '.
    When you use CONNECT BY, all what you have to do is add NOCYCLE to say that cycles occur, in which case CONNECT_BY_ISCYCLE will be set to 0 or 1. Using WITH, it should be noted exactly what you mean by a cycle, and you also have to specify exactly how you want to report a cycle (i.e. which variable will hold the flag, and what will be the flag values).

    CONNECTION BY seems to be the most effective of these two.

  • Based on the location of z3 Xperia WiFi

    How does the location based WiFi works?
    I added my WiFi preferred instead of me. When I go back to my place that WiFi is not turn on by itself.

    It worked without booting in safe mode or change other settings. Thank you

  • I try to rearrange the contents of the page based on the location of the country someone at - it a solution for this?

    I can see under documentation liquid I can modify the script below and change the dom using jquery. Not sure if it's the best approach.

    < script > window.location =

    {% If globals.visitor.country == ' to THE ' %}}

    ' / AU.

    {% elsif globals.visitor.country is 'US' %}

    "/ We.

    {% elsif globals.visitor.country is "GB" %}

    "/ Go".

    {% other %}

    "/ store-unavailable.

    {% endif %}

    < /script >

    Hello Nik and Jose,

    Sorry for the late reply, unfortunately as far as I know, the mapping between the IPs and the country codes are out of our control.

    But you can make an ajax request to freegeoip.net if you have no more than 10 k request per day.

    For example (I googled an IP of Puerto Rico): http://freegeoip.net/json/66.50.137.144

    You will get a JSON which allows you to redirect your visitors if PR

    It will be useful,

    Stoiky

  • Error code (0 x 40000015) at the location 0x0000ec96 when installing Vista Ultimate 64

    I've just set up a computer and I am trying to install Windows Vista Ultimate 64 bit. As soon as I put in the product key I get setep.exe Application error "the exception unknown software exception (0 x 40000015) occurred in the application at location 0x0000ec96." What can I do?

    Hi MEMason,

    1. what type of installation? Is - this facility upgrade or custom (clean) installation?
    2. do you have an extra adapter connected to the computer?
    3. What is the size of the RAM (Random Access Memory) installed on the computer?
    4. do you have 32-bit processor or 64-bit?

    We recommend that you first perform an installation without a key and check if the problem persists. This means, proceed with the installation without inserting the key during installation.

    If the problem persists, we recommend that you simplify the material, for example, if you have an additional video and RAM card, then disconnect / remove the system and run the install to see if the problem persists.

    For your reference:
    See Troubleshooting Stop error messages that may occur when you try to install Windows Vista

    Visit our Microsoft answers feedback Forum and let us know what you think.

  • Based on the location of view 5 printing problem

    Hello everyone.

    I am facing a very annoying problem with the basic functionality of print location with VMware View 5.

    -I registered the TPVMGPoACmap.dll

    -J' created the GPO and rules to map printers (see capture, I tried all the possible driver names)

    -J' set the processing mode of loopback of group user gpo with merged parameter policy

    -I see in the registry of the Virtual Office of the key with all my rules

    -J' installed the feature print virtual with the agent

    I'm a little lost with LBP. No newspaper, no message, no reason not to ride my printers.

    Help, please

    Thanks in advance.

    Stéphane Grimbuhler

    Senior consultant virtualization and storage (VCP / VCAP-DCA)

    VMware instructor (VCI)

    My Blog: www.virtualgeek.ch

    Screen Shot 2012-01-11 at 4.29.12 PM.png

    Screen Shot 2012-01-11 at 4.30.04 PM.png

    Also, I just posted it here:

    http://communities.VMware.com/docs/doc-18007

    I'll try and update this document with more errors and such as I find them.

    Gunnar

  • Why my GPS stopped suddenly when the location and the surroundings have not changed work?

    Why my GPS stopped suddenly when the location, a framework and the weather conditions have not changed work?

    Ros

    iPhone 4S OS 9.2.1

    Have you ever tried to force reboot the phone by holding down the button sleep and home for 10 seconds, until the Apple logo comes back again? You won't lose data by doing this, but it can cure a few glitches.

    If this does not work and to rule out a software problem, set it back to factory settings, without using any data backup later. Test the phone and if the GPS works again, restore the backup.

    If the GPS does not work after the factory reset, it is a hardware problem, and Apple has to repair the phone if GPS can be fixed.

    In the case where it cannot be resolved, it could offer to replace the iPhone 4s, if you are willing to pay the price for the refurbished phone.

    Out of warranty repair service

    If your repair is not covered by Apple limited one-year AppleCare warranty + or AppleCare Protection Plan, your iPhone may be eligible for out-of-warranty service. For example, the liquid damage is not covered by the warranty, but may be eligible for out-of-warranty service. Some damage is not eligible, for example, if your device has been broken into several pieces. See the terms of repair of Apple and Conditions for more details.
    Read the terms of Apple repair

    Model Out-of-warranty service fee Battery service *
    iPhone 6 s more, iPhone 6 Plus $329

    $79
    * available only if battery
    Apple diagnostic test failure

    iPhone iPhone 6s 6 $299
    iPhone 5, iPhone 5, iPhone 5 $269
    iPhone 4S $199
    iPhone 4, iPhone 3GS, iPhone 3G $149

    In addition, a $6.95 shipping charges if necessary. Fees are in US Dollars and exclude tax. The price is for the service through Apple. The final service charge we charge will be determined during the tests and may be less than the costs of service above. Pricing and terms vary for the service by an Apple authorized service provider.

    copied from: answer Service Center - iPhone


Maybe you are looking for

  • Contact connection problem

    I was just trying to plug my iPod 6G Touch to my computer to charge. The lightning cable would make in the port of the iPod because it is in a a faulty design that does not simply a room around the port to adapt. I tried to push it by removing and re

  • Start/drive problems hard satellite L305-S5899

    Hello all - happy holidays and I would appreciate assistance. I just got this laptop for Christmas, and I woke up to find this morning in a blue screen! After I calm down, shut down the computer, and he refused to restart. Shows the TOSHIBA logo, the

  • A little help in the choice of the format and frequency of shoot picture.

    I understand completely it after all these years but I did not. I'm not proud of this fact, but I admit it. I just bought the new Panasonic AG-DVX200 and love it. I've always shot in 720 p at 59.94 with my old camera and edited on a 59.94 chronology.

  • excelreportdemo project link error with CVI2010 on windows 7, 64-bit operating system

    I try to run the project for excelreportdemo in CVI2010 on windows 7, 64-bit operating system. I have the Excel2013 installed as well. I chose the build configuration release or debug for 32 bits of the system in order to be compatible to the test fo

  • HP Color Laserjet 3550 Printer not print true colors

    I have a hp g72 laptop I received last year. It's a little.  I have a printer hp color laserjet 3550 which is about 5 or 6 years.  I think that I have just updated the drivers to accept 64 bit (not sure). However. My impression went crazy.  It does n