Case identification

Hi,
Can anyone help me with a program that can change the case of a string ie from lower to upper case without using upper case or the translate function.the string should be entered by the user.
ex:
let' s say the user enters ' world ' (lower case)
the ouput should be 'WORLD' (upper case ) this should be done with using pl/sql and without any case functions(upper or translate).
please can you help me with this.

Hi,
Waht do you think about this:
create or replace PROCEDURE CONVERT_STRING
(p_inputStr IN VARCHAR2, p_outputStr OUT VARCHAR2, p_option IN VARCHAR2)
IS
v_inputStrLength NUMBER;
v_letter VARCHAR2(10);
v_letterNo NUMBER;
BEGIN
EXECUTE IMMEDIATE 'SELECT LENGTH(:1) FROM DUAL' INTO v_inputStrLength USING p_inputStr;   
--if p_option is 'H' then convert small letter to big one
IF p_option = 'H' THEN
  FOR counter IN 1..v_inputStrLength LOOP
    EXECUTE IMMEDIATE 'SELECT SUBSTR(:1,:counter,1) FROM DUAL' INTO v_letter USING p_inputStr,counter;
    EXECUTE IMMEDIATE 'SELECT ASCII(:1) FROM DUAL' INTO v_letterNo USING v_letter;
    IF v_letterNo >=97 AND v_letterNo <=122  THEN
      p_outputStr := p_outputStr || CHR(v_letterNo - 32);
    ELSE
      p_outputStr := p_outputStr || v_letter;
    END IF;
  END LOOP;
ELSIF p_option = 'L' THEN
  FOR counter IN 1..v_inputStrLength LOOP
    EXECUTE IMMEDIATE 'SELECT SUBSTR(:1,:counter,1) FROM DUAL' INTO v_letter USING p_inputStr,counter;
    EXECUTE IMMEDIATE 'SELECT ASCII(:1) FROM DUAL' INTO v_letterNo USING v_letter;
   IF v_letterNo >=65 AND v_letterNo <= 90 THEN
      p_outputStr := p_outputStr || CHR(v_letterNo + 32);
    ELSE
      p_outputStr := p_outputStr || v_letter;
    END IF;
  END LOOP;
  --if 3rd parameter is invalid
ELSE
  DBMS_OUTPUT.PUT_LINE('INVALID 3RD PARAMETER. AVAILABLE OPTIONS: "H" and "L"');
END IF;
DBMS_OUTPUT.PUT_LINE(p_outputStr);
END;Then invoke it:
DECLARE
v_result VARCHAR2(100);
BEGIN
CONVERT_STRING('ABcD',v_result,'L');
END;Peter D.

Similar Messages

  • Fault cases identification using Sql query

    Hi ,
    i have data in below format.using below data to extract the fault cases.
    operator machine fromdate todate
    1491 QC03 2014-09-02 02:51:00.000 2014-09-02 06:10:00.000
    1427 QC03 2014-09-02 06:11:00.000 2014-09-02 07:17:00.000
    1491 QC03 2014-09-02 11:21:00.000 2014-09-02 14:50:00.000
    1595 QC03 2014-09-02 03:10:00.000 2014-09-02 08:25:00.000
    we need to fetch the falut cases from the above mentioned data.
    emp is working on different time on specified machines. In some cases multilple employuees working
    on
    specifed Machines on Same time.
    In above Example case 1491,1595 operators working time is Overlapping.
    we need to check emp working same time on Same machine(Fault cases)
    Anybody know the way pls guide on the same...

    Hi KONDAPATURU, 
             There are 2 ways that you can go about in getting the solution. They are listed below.
    Approach
    1
    USING CROSS APPLY
    Declare @FaultCases table
    operator int,
    machine varchar(10),
    fromdate datetime,
    todate datetime
    -- Sample values
    insert into @FaultCases (operator,machine,fromdate,todate) values
    (1491,'QC03','2014-09-02 02:51:00.000','2014-09-02 06:10:00.000'),
    (1427,'QC03','2014-09-02 06:11:00.000','2014-09-02 07:17:00.000'),
    (1491,'QC03','2014-09-02 11:21:00.000','2014-09-02 14:50:00.000'),
    (1595,'QC03','2014-09-02 03:10:00.000','2014-09-02 08:25:00.000'),
    (1596,'QC03','2014-09-02 03:11:00.000','2014-09-02 08:35:00.000')
    -- Cross Apply Query
    SELECT F.*
    FROM @FaultCases F
    CROSS APPLY
    SELECT COUNT(*) AS NumberOfOccurances
    FROM @FaultCases
    WHERE machine = F.machine
    AND operator <> F.operator
    AND
    (fromdate BETWEEN F.fromdate AND F.todate)
    OR
    (todate BETWEEN F.fromdate AND F.todate)
    )OP
    WHERE NumberOfOccurances > 0
    Approach 2
    USING CTE
    Declare @FaultCases table
    operator int,
    machine varchar(10),
    fromdate datetime,
    todate datetime
    DECLARE @OUTPUTFaultCases table
    operator int,
    machine varchar(10),
    fromdate datetime,
    todate datetime
    insert into @FaultCases (operator,machine,fromdate,todate) values
    (1491,'QC03','2014-09-02 02:51:00.000','2014-09-02 06:10:00.000'),
    (1427,'QC03','2014-09-02 06:11:00.000','2014-09-02 07:17:00.000'),
    (1491,'QC03','2014-09-02 11:21:00.000','2014-09-02 14:50:00.000'),
    (1595,'QC03','2014-09-02 03:10:00.000','2014-09-02 08:25:00.000'),
    (1596,'QC03','2014-09-02 03:11:00.000','2014-09-02 08:35:00.000')
    -- USING CTE to get all rows where fromDate or ToDate lies between fromDate and todate of table's rows. This process is done row by row.
    ;WITH CTE
    AS
    SELECT ROW_NUMBER() OVER (order by operator) RowId, * from @FaultCases
    SELECT * INTO #Output from CTE
    DECLARE @TotalCount int , @RowId int = 1
    SELECT @TotalCount = COUNT(*) from #Output
    WHILE @RowId <= @TotalCount
    BEGIN
    DECLARE @fromdate datetime, @todate datetime
    SELECT @fromdate = fromdate, @todate = todate FROM #Output WHERE RowId = @RowId
    INSERT INTO @OUTPUTFaultCases
    SELECT operator, machine, fromdate, todate
    FROM #Output
    WHERE
    (@fromdate BETWEEN fromdate AND todate)
    OR
    (@todate BETWEEN fromdate AND todate)
    AND RowId <> @RowId
    SELECT @RowId+=1
    END
    DROP TABLE #Output
    SELECT DISTINCT * FROM @OUTPUTFaultCases
    In both cases the output is as per below screenshot.
    Please "Mark as Answer" if it answers your question.
    Vijeth Sankethi

  • Business Case- Need inputs

    Hi Experts,
    Please let me know what does a business case satnds for in general. I had been asked to prepare a business case for my client and I donot have any clue about this. Would be a real help if any one cen please pass me on soem older templates, samples for this.
    Rgds
    NS

    HI,
    The Business Case identifies the objectives and proposed solution of the SAP Program and documents quantifiable benefits that support the Programu2019s justification.
    Below mentioned are the contents of a business case at higher level.
    1. Executive Summary
         a. Program Objective
         b. Problem Statement/Opportunity
         c. Proposed Solution
         d. Industry Comparison
    2. Strategic Alignment
         a. Business Strategy
         b. Technology Strategy
    3. Program Benefits
         a. Tangible  Benefits
         b. Intangible Benefits
    I think sharing the business case of my projects will be difficult because of confidentaility issues. Hope this helps you and you can make your own business case document on these guidelines.
    Rgds
    Manish

  • Steps to upload vendor invoice(tcode fb60) in bdc

    hi, iam srinivas can any one plz send me the steps to upload veneor invoice tcode is (fb60).i dont want the code but i want the steps to create .
    thanks and regards.
    Srinivas.

    refer this site.
    FI_AP_FBR2_Post_With_Reference (FBR2)
    Business Process Description Overview
    Use this procedure to copy a previously posted non-PO invoice document that uses many of the same values.
    This may help reduce data entry time if used correctly.  For example, the library invoice vouchers that have the same vendor but many invoices on them might be a good example of when to use this transaction code.
    Trigger
    Perform this procedure when there is an invoice that needs to have data entered where most of the fields are the same as a prior invoice document already entered in the system.
    Prerequisites
    ·         Security Role:  AP_DIR_INV_ENTRY
    ·         An FB60 invoice has already been data entered.
    Menu Path
    None
    Transaction Code
    FBR2
    Tips and Tricks
    ·         If you would like to save this transaction under your "Favorites" folder, right-click on the "Favorites" folder, select "Insert Transaction" and type in this t-code when the box appears.
    ·         You may use the transaction code:  search_sap_menu to search for a transaction codes menu path.
    Procedure
    Enter Vendor Invoice: Company Code PUR
    Typically the FBR2 - Post With Reference transaction is accessed from the Financial transaction code that you just used.  For Accounts Payable, typically we would use the FB60 transaction code to enter invoices that are not PO-related.  After you have entered an invoice, you can now post a second invoice.  Feel free to post an invoice in DEV to the Vendor ID number:  31.  Choose today's date as the Invoice Date.  Enter a Vendor Invoice in the Reference Field. Enter $1000 as the Amount.  Enter a Text that you want to show on the remittance advice to the vendor.  Choose your own GL Account and Cost Center.  Enter 21010000 as the Fund.  Make sure to also enter $1000 in the Amount in doc. curr. field.
        Please be aware that the FB60 screenshot above is using the ZPurdue Variant so unless you are also using that same variant the order of your columns may differ.
        Refer to FB60 documentation for more information regarding entering a non-PO related invoice.
        After an invoice has been entered, you may proceed to step 1.  If you prefer not to enter an FB60 invoice then after you open FB60, immediately do step 1, but enter "1900001354" in the Document Number field.
    1.       Select Goto Post with reference           Shift+F9 to go to the FBR2 transaction.
    Post Document: Header Data
    The document number you just entered in FB60 should now display.  If you did not first enter your own FB60 invoice, please enter 1900001354 in the Document Number field.  Make sure Company Code is PUR and Fiscal Year is 2007.
        If you did enter your own FB60 invoice to reference to, please be aware that the data entry fields will have different content in the screen shots than what you are seeing on your screen.
    2.       Click  or the "Enter" key to proceed.
    Post Document: Header Data
    Because we want to avoid paying the same invoice twice, we must change the reference field to another Vendor Invoice text.
    3.       As required, complete/review the following fields:
    Field Name
    R/O/C
    Description
    Reference
    R
    Allows for further clarification of an entry by reference to other sources of information, either internal or external to SAP.  Any SAP-posted document number can be used as a "reference" when entering a new document.
    Example:          VENDORINVOICE#2
        Your reference number should be different than the one above.  Otherwise, the system will think you are entering a duplicate invoice.  Please change your text slightly.
    Post Document: Header Data
    4.       Click  or the "Enter" key to proceed.
    Post Document Display Overview
    You are now viewing the document overview screen.
    5.       Double-click  to open that line item.
    Post Document Correct Vendor item
    When you open the Vendor line item, you may change the Text field here to change what appears on the remittance advice.
    6.       As required, complete/review the following fields:
    Field Name
    R/O/C
    Description
    Text
    O
    Description field for an entry.
    Example:          prints on remittance advice - for second invoice
    Post Document Correct Vendor item
    7.       Click  to return to the document overview screen.
    Post Document Display Overview
    The document overview screen.
    8.       Click  to post this second invoice which has the same fields as the original except a different vendor invoice number and a different remittance advice text.
    Information
    Pending upon your user settings, you may not get this pop up box, but just a message in the bottom left hand corner of the screen.
    9.       Click  to close the box.
    Enter Vendor Invoice: Company Code PUR
    Because you used the menu (Goto Post with reference) from FB60 to access the FBR2 transaction code, you are then returned to the FB60 transaction after you have posted the invoice.
    10.     Another way to access FBR2 is to just type the t-code in the field at the top of the screen.  As required, complete/review the following fields:
    Field Name
    R/O/C
    Description
    Transaction Code
    R
    A unique four-character (in most cases) identification assigned to each SAP transaction based on its purpose.
    Example:          /nfbr2
    11.     Click  or the "Enter" key to proceed.
    Post Document: Header Data
    The FBR2 transaction code opens with the last document number entered as the default.
    12.     Click  or the "Enter" key to proceed.
    Post Document: Header Data
    This time we will change the vendor number
    13.     Change the Reference field.  As required, complete/review the following fields:
    Field Name
    R/O/C
    Description
    Reference
    R
    Allows for further clarification of an entry by reference to other sources of information, either internal or external to SAP.  Any SAP-posted document number can be used as a "reference" when entering a new document.
    Example:          VENDORINVOICE
        Your reference number should be different than the one above.  Otherwise, the system will think you are entering a duplicate invoice.  Please change your text slightly.
    Post Document: Header Data
    14.     As required, complete/review the following fields:
    Field Name
    R/O/C
    Description
    Account
    R
    Unique identification number. SAP uses several kinds of accounts. SAP's general ledger accounts are similar to standard in most accounting systems. SAP also uses sub-ledger accounts for customers (accounts receivable), vendors (accounts payable), and assets (asset accounts). These sub-ledger accounts roll-up to a general ledger account.
    Example:          5000129
        Vendor 5000129 in DEV has withholding tax applied to it in the vendor master.
    Post Document: Header Data
    15.     Click  or the "Enter" key to proceed.
    Post Document Add Vendor item
    If the vendor invoice date was a date in the past, the due date for pay immediately will be in the past.  You may get the above informational message to alert you of the date.  If you do, just hit the "Enter" key to acknowledge it.
    Enter Withholding Tax Information
    Because this vendor has withholding tax information in its vendor master, you will receive this popup up box.
    16.     Click  to accept it.
        Refer to the Tax Department for more information regarding withholding tax.
    Post Document Display Overview
    You should now see the document overview screen.  If you do not, then click on .
    17.     Double-click  OR click  to open it.
    Post Document Correct Vendor item
    18.     As required, complete/review the following fields:
    Field Name
    R/O/C
    Description
    Text
    O
    Description field for an entry.
    Example:          change remittance advice text
    Post Document Correct Vendor item
    19.     Click  to view that Vendor's Withholding tax information again.
    Enter Withholding Tax Information
        If for some reason, for this invoice the vendor should not have any withholdings, you would enter a 0.00 in both the W/Tax Base and W/Tax Amt fields.
        When using the FBR2 to change withholding tax amounts, you need to be very careful if using this new invoice as the "reference" invoice for the next one.  For example, if you put 0.00 in both W/Tax Base and W/Tax Amt fields then if this is the reference invoice, those 0.00 amounts will automatically be applied to the next; however, you won't see the 0.00 displayed.  The 0.00 will be assumed.
    20.     Click  to close the box.
    Post Document Correct Vendor item
    21.     Click  to post the invoice.
    Post Document: Header Data
    Your new document number will display in the bottom left hand corner.  Pending upon your user settings, you may also get a pop up box to acknowledge.
    You have posted another invoice, but this time you changed the vendor ID used, the vendor invoice, and the text on the remittance advice.
        Notice that the "Document Number" field now defaults to the newly posted invoice number.
        Because you entered FBR2 in the transaction code field to access this screen, when you post an invoice you are returned to the beginning of the FBR2 screen.  Remember, when you accessed it from the menu line of FB60?  If you access it that way, you are then returned to FB60 after the Post with Reference document is posted.
    22.     Because you are returned to the start of FBR2 again, you may just click  or the "Enter" key to proceed.
    Post Document: Header Data
    Now you are at the start of entering a new invoice again.
    23.     Click  to return to the main menu without finishing the process of entering another invoice.
    24.     You have completed this transaction.
    Result
    You have posted two documents by using a reference document.  This reduced the data entry required since it defaults the fields from the reference document.
    Comments
    Be very careful using this transaction if you change withholding tax amounts.
    To see the results/calculations of discounts and withholdings, you must run F110, the Payment Program.
    http://www.purdue.edu/onepurduehelp/content/fi_ap_fbr2_post_with_reference/wi/html/index.htm
    Message was edited by:
            Karthikeyan Pandurangan
    Message was edited by:
            Karthikeyan Pandurangan

  • AS3 vs AS2?

    I learned to program in Flash using Actionscript 2.  I've heard that AS3 doesn't allow you to put code on a movieclip, which is something I have used often.
    What are the benefits of using AS3 instead of 2 and how hard is it to transition over to 3?  Is there a list of things that need to be done differently in 3 vs 2?
    Thanks.

    Your wonderings are good ones, but the answers can lead to opening a can of worms depending who drops in... those who pursued AS3 and love it, those who trembled in trying and backed away, and all flavors in between.
    You might go thru the following rather lengthy discussion.  It may answer some of what you are wondering about: http://forums.adobe.com/message/1051265
    As far as a list of differences, one resource is available by searching "ActionScript 2.0 Migration" in the Actionscript 3 section of the Flash help docs (appears in CS3 at least).  This lists all the AS2 things that go away with AS3 and in some cases identifies what replaces them.

  • Error # 1084

    It's me again.
    I corrected the error # 1009 and now i get 2 more : # 1084.
    I tried to correct but i can't see.
    Tks a lot.
    package {
              //composante du texte
              import flash.display.*;
              import flash.text.*;
              //importation des composantes du programme
              // composante du bouton
              import flash.events.*;
                        //création des classes du programme
              public class U2A5_JeuTicTacToe extends MovieClip
                        //Déclarer les constantes.
                        //combien de case par rangees et par colonnes
                        private static const RANGEES:int=3;
                        private static const COLONNES:int=3;
                        // grandeur des cases pour les rangees et les colonnes
                        private static const RANGEE_HAUTEUR:Number=85;
                        private static const COLONNE_LARGEUR:Number=85;
                        private static const RANGEE_DECALAGE:Number=10;
                        private static const COLONNE_DECALAGE:Number=10;
                        //Déclarer les variables pour le reste du programme
                        // variable pour la memoire de la derniere case selectionner
                        private var caseCourante:Cases;
                        // identifie une colonne ou rangee spécifique
                        private var tttRangee:int;
                        private var tttColonne:int;
                        // identifie le joeur courant donc les x ou les o
                        private var joueurCourant:int=2;
                        // variable pour savoir quand les 9 cases ont été choisi
                        private var nombreDeClics:int=0;
                        // variable pour le X et le O
                        private var joueurSymbole:String="X";
                        // variable utilisé quand un joueur gagne
                        private var gagnant:String="Début";
                        //Utiliser un tableau pour reseter au courant des x et des o pour chaque rangee.
                        var rangee1:Array=[" "," "," "];
                        var rangee2:Array=[" "," "," "];
                        var rangee3:Array=[" "," "," "];
                        //Insérer les rangées dans un tableau conteneur nommé TTTPlancheJeu.
                        var TTTPlancheJeu:Array=[rangee1,rangee2,rangee3];
                        //Utiliser une fonction constructeur pour dresser la planche du jeu.
                        public function U2A5_JeuTicTacToe():void
                                  // boucles for pour creer les trois colonnes et les trois rangees
                                  for (var c:int=0; c<COLONNES; c++)
                                            for (var r:int=0; r<RANGEES; r++)
                                                      // code pour creer chaque case une a cote de l'autre
                                                      var caseAffiche:Cases =  new Cases();
                                                      caseAffiche.stop();
                                                      caseAffiche.x=c*COLONNE_LARGEUR+COLONNE_DECALAGE;
                                                      caseAffiche.y=r*RANGEE_HAUTEUR+RANGEE_DECALAGE;
                                                      addChild(caseAffiche);
                                                      // code pour que le programme ecoute pour un evenement de click pour qu'un coup soit joue
                                                      caseAffiche.addEventListener(MouseEvent.CLICK, joueUnCoup);
                        // code de la boucle for pour la partie des coups joué
                        public function joueUnCoup(event:MouseEvent)
                                  // variable qui calcule du nombre de clic ajoute 1
                                  nombreDeClics++;
                                  // lorsqu'un click sur une case est fait - le bon symbole doit apparaitre - ceci en est le code
                                  caseCourante = (event.target as Cases);
                                  caseCourante.symbole=joueurCourant;
                                  caseCourante.gotoAndStop(joueurCourant);
                                  situeSurPlancheJeu();
                                  // code pour verifier si il y a un gagnant
                                  verifieGagnant();
                                  // code pour changer de joueur pour le prochain coup
                                  changeJoueur();
                        // code pour situer quel case le joueur a selectionner
                        function situeSurPlancheJeu():void {
                                  // basé sur les coordonnées X et les coordonnées Y
                                  if (mouseX<=85) {
                                            tttColonne=0;
                                  } else if ((mouseX > 85) && (mouseX <= 170)) {
                                            tttColonne=1;
                                  } else if ((mouseX > 170) && (mouseX <= 255)) {
                                            tttColonne=2;
                                  if (mouseY<=85) {
                                            tttRangee=0;
                                  } else if ((mouseY > 85) && (mouseY <= 170)) {
                                            tttRangee=1;
                                  } else if ((mouseY > 170) && (mouseY <= 255)) {
                                            tttRangee=2;
                                  // basé sur lequel des if qui fonctionne le programme utilise ces données dans ce code et met le symbole sur la bonne case
                                  TTTPlancheJeu[tttRangee][tttColonne]=joueurSymbole;
                        // code pour vérifié si il y a un gagnant.
                        function verifieGagnant():void {
                                  // Vérifie les rangées
                                  for (var r:int=0; r<RANGEES; r++) {
                                            if ( ( (TTTPlancheJeu[r][0]) == (TTTPlancheJeu[r][1]) ) && ( (TTTPlancheJeu[r][1]) == (TTTPlancheJeu[r][2]) ) && ( (TTTPlancheJeu[r][0]) != " ") ) {
                                                      gagnant=(TTTPlancheJeu[r][0]);
                                  //Vérifie les colonees.
                                  for (var c:int=0; r<COLONNES; c++) {
                                            // verifie si il y a trois même symbole sur une rangée
                                            if ( ( (TTTPlancheJeu[c][0]) == (TTTPlancheJeu[c][1]) ) && ( (TTTPlancheJeu[c][1]) == (TTTPlancheJeu[c][2]) ) && ( (TTTPlancheJeu[c][0]) != " ") ) {
                                                      gagnant=(TTTPlancheJeu[c][0]);
                                            // Vérifie une des diagonales
                                            // verifie si il y a trois même symbole sur une colonne
                                            if ( ( (TTTPlancheJeu[0][0]) == (TTTPlancheJeu[1][1])) && ((TTTPlancheJeu[1][1]) == (TTTPlancheJeu[2][2]) ) && ((TTTPlancheJeu[0][0]) != " ")) {
                                                      gagnant=(TTTPlancheJeu[0][0]);
                                            // vérifie si la partie est nulle.
                                            // si les 9 cases ont été choisi et il n'y a jamais eu de gagnant le jeu est nul
                                            if ((nombreDeClics == 9) && (gagnant == "Début")) {
                                                      gagnant="Match null!";
                                            //S'il y a un gagnant, l'indiquer.
                                            if (gagnant!="Début") {
                                                      MovieClip(root).gagnant=gagnant;
                                                      // allé à l'image 3 finPartie
                                                      MovieClip(root).gotoAndStop("finPartie");
                                  // function qui permet les bon symbole pour les joueurs respectif d'etre afficher
                                  function changeJoueur():void {
                                            //Si c'est le joueur 2 c'est donc le symbole o qui apparait
                                            if (joueurCourant==2) {
                                                      joueurSymbole="O";
                                                      // change la variable pour que le prochain tour soir au X
                                                      joueurCourant=3;
                                            } else if (joueurCourant == 3)
                                                      //Si c'est le joueur 3 c'est donc le symbole X qui apparait
                                                      joueurSymbole="X";
                                                      // change la variable pour que le prochain tour soir au O
                                                      joueurCourant=2;

    The first thing that is wrong with the code is that constructor return type is void - remove it; constructor returns an instance of the class.
    Second, you have three lines that have spaces in variable names:
    caseAffiche.x=c*COLONNE_LARGEUR+COLONNE_DECA LAGE;
    caseAffiche.y=r*RANGEE_HAUTEUR+RANGEE_DECALA GE;
    caseAffiche.addEventListener(MouseEvent.CLIC K, joueUnCoup);

  • Timesheet issues

    What should I do to find out if or if not the timesheet is absolutely fine.
    when i talk about the timesheets being absolutely fine or not, i am talking about the timesheets that we are not able to approve. I think that can be the only determiner to figure
    out whether or not the timesheet is absolutely fine. what else?
    So I was wondering if, a person, who does not know lots about Microsoft project server, project web application, project professional 2010 etc etc, can or cannot, easily take a look,
    at the timesheet, and recognize if or if not, the time has been submitted correctly and there will not be a lot of error messages right after the user submits the time or right at the moment the timesheet is being approved
    My concern is how do i find out what in a certain timesheet causes the issue.
    what are the probable things that go wrong while entering the time or while submitting the time.
    how to access the timesheet of others and recall it on their behalf in case they are not available due to some personal reasons.
    Should the faulty timesheets be deleted.
    If yes, who will create the new timesheet and who will determine how much time to enter in the timesheet and how a timesheet is created.
    The summary of my question is - what is the procedure to delete a timesheet it and recreate it, we have to do this on behalf of someone else.

    You can use delegation and create, fill, submit, recreate and recall.
    If you have your server up to date with MS project server CU and your users have some basic idea about Timesheet you will not face issues. Though sometimes you can face some issues related to assignment UID and task UID as user fills actual for some task
    or assignment and later point of time PM delete those task but User and filed actual against task then user can face some issue while submitting the timesheet or Pm can face issue while approving it.
    Sometime user fill actual for different different task of  different different  project some of status manger approve it some doesnt because of this you will see timesheet waiting for approval or in sbumitted mode. In this case identifing
    what is happening and why is bit tough for User as well as admin.
    You can create some good report in either excel or SSRS which will help you to understand what is happening and where is happening.
    You can Use delegation to see other timesheet you can delete, recreate and fill timesheet via delegation. once you done with all activity you can delete delegate session.You can do it for any user in Project server.
    kirtesh

  • Connecting Netgear DG834G ADSL to AEBS question

    Hi
    I have a Netgear DG834G ADSL wireless router and am considering getting the AEBS. I don't understand how these things work, but reading through the threads am I correct in thinking that
    1. I can connect the AEBS to the Netgear - how in bridged mode?
    2. I will be able to take advantage of the faster 802.11n speeds
    Other than the increase wifi speed is there any advantage in having AEBS compared to what I already have? (Okay, given that with AEBS I can connect a printer and hard drive for eg)
    Thanks

    Have just posted the following on Netgear's forum.
    Thanks for the reply but over a hot bath I decided to try the following before receiving your mail;
    1. Connect the airport express base station to the dg834n (using an ethernet cable!) . I only chose the express despite your advice because it is the neatest on the wall socket next to the netgear box and power adapter. Reset the express using the good old paper clip technique.
    2. Configure the airport express using Apple's Airport utility; on the internet tab - connect to the internet using ethernet, on the the Wireless tab - created a new network name (just in case identification might prove difficult later) and on the WDS tab, participate in a WDS (Wireless Distribution System).
    3. De-activate the wireless network at the dg834n using the IP address (http:///192.168.0.1)
    4. Select your new network on the remote, airport card equipped computer. Internet now works everywhere.
    5. Configure the other base stations, using Apple's Airport utility, to the new network address as remote or relay base stations.
    But its not all good news; now it seems my printer is not designed to operate on a wireless network!!! (HP f380) Another hot bath will surely fix that
    Its not ideal and wastes the dg834n's capability but its a fix. Hope this helps

  • Creation of Business Partner with External BP #,ID type and Identifications

    Hi Group,
    I have a query on creation of Business Partner with External BP #,ID type and Identification # (along with the Firstname,Lastname,Email, Phone & etc.,) things.
    the thing is that I was using a BAPI called "BAPI_BUPA_FS_CREATE_FROM_DATA", to create a BP and I was not able to have an option available for these things (External BP #,ID type and Identification # ) along with that BAPI.
    So please kindly let me know how these things can be fetched from a BAPI which can accomodate all the above things mentioned.
    Please kindly let me know how it can be achieved.
    thanks in advance.
    Regards,
    Vishnu.

    Hi Gerhard,
    Infact this reply was very useful, but ,while using the BAPI "BAPI_IDENTIFICATION_ADD" while creating the Id type and Id #s, this BAPI was not enabling this.
    I was trying to use this BAPI to create ID #, and it's desc, but, this BAPI was returning like "This BP # does not exist" (in some cases) and in some other cases, it is keeping quiet without giving any indication as whether the things have been updated or not... and also when I checked, things were not getting reflected.
    your help would be very much appreciated.
    thanks & regards,
    vishnu.

  • How can I backup data from a case-sensitive volume to a NON-case-sensitive volume?

    The case-sensitive volume in this instance being a desktop-mounted disk image volume.
    A tragi-comedy in too many acts and hours
    Dramatis Personae:
    Macintosh HD: 27" iMac 3.06GHz Intel Core 2 Duo (iMac10,1), 12 GB RAM, 1 TB SATA internal drive
    TB1: 1 TB USB external drive
    TB2: 2 TB USB to Serial-ATA bridge external drive
    Terabyte: a .dmg disk image and resulting desktop volume of the same name (sorry, I don't know the technical term for a .dmg that's been opened, de-compressed and mounted -- evanescently -- on the desktop)
    Drive Genius 3 v3.1 (3100.39.63)/64-bit
    Apple Disk Utility Version 11.5.2 (298.4)
    Sunday morning (05/08/11), disk utility Drive Genius 3's drive monitoring system, Drive Pulse, reported a single bad block on an external USB2.0 1TB drive, telling me all data would be lost and my head would explode if I didn't fix this immediately. So I figured I'd offload the roughly 300 GB of data from TB1 to TB2 (which was nearly empty), with the intention of reinitializing TB 1 to remap the bad block and then move all its data BACK from TB 2. When I opened TB1's window in the Finder and tried to do a straight "Select All" and drag all items from TB1 to TB2, I got this error message:
    "The volume has the wrong case sensitivity for a backup."
    The error message didn't tell me WHICH volume had "the wrong case sensitivity for a backup," and believe me, or believe me not, this was the first time I'd ever heard that there WAS such a thing as "case sensitivity" for a drive. I tried dragging and dropping some individual folders -- some of them quite large, in the 40GB range -- from TB1 to TB2 without any problem whatsoever, but the majority of the items were the usual few-hundred-MB stuff that seems to proliferate on drives like empty Dunkin' Donuts coffee cups on the floor of my car, and I didn't relish the idea of spending an afternoon dragging and dropping dribs and drabs of 300GB worth of stuff from one drive to another.
    Being essentially a simple-minded soul, I had what I thought was the bright idea that I could get around the problem by making a .dmg disk image file of the whole drive, stashing it on TB2, repairing and re-initializing TB1, and then decompressing the disk image I'd made of TB1, and doing the "drag and drop" of all the files in resulting desktop volume to TB1. So I made the .dmg of TB1, called "Terabyte," stashed that .dmg on TB2 (no error messages this time), re-initialized and then rebooted the iMac from my original Snow Leopard 10.6.1 disks and used Disk Utility to erase and initialize TB1 -- making sure that it was NOT initialized as case-sensitive, and installed a minimal system on TB1 from the same boot. Then I updated that 10.6.1 system to 10.6.7 with System Update, and checked to see that Disk Utility reported all THREE drives -- internal, 1TB, and 2TB -- as Mac OS Extended (Journaled), and no "case sensitive" BS. I also used Drive Genius 3's "information" function for more detailed info on all three drives. Except for the usual differing mount points, connection methods, and S.M.A.R.T. status (only the Macintosh HD internal, SATA 1TB drive supports S.M.A.R.T.), everything seemed to be oojah-***-spiff, all three drives showing the same Partition Map Types: GPT (GUID Partition Table.) Smooth sailing from here on out, I thought.
    Bzzzzt! Wrong!
    When I opened the Terabyte .dmg and its desktop volume mounted, I tried the old lazy man's "Select All" and drag all items from the desktop-mounted drive "Terabyte" to TB1, I got the error message:
    "The volume has the wrong case sensitivity for a backup."
    I then spent the next three hours on the phone with AppleCare (kids -- when you buy a Mac ANYTHING, cough up the money for AppleCare. Period.), finally reaching a very pleasant senior tech something-or-other in beautiful, rainy Portland, OR. Together we went through everything I had done, tried a few suggestions she offerred, and, at the end of three hours, BOTH of us were stumped. At least I didn't feel quite as abysmally stupid as I did at the beginning of the process, but that was all the joy I had gotten after two solid days of gnawing at this problem -- and I mean SOLID; I'm retired, and spend probably 12 hours a day, EVERY day, at the keyboard, working on various projects.
    The AppleCare senior tech lady and I parted with mutual expressions of esteem, and I sat here, slowly grinding my teeth.
    Then I tried something I don't know why I was so obtuse as to not have thought of before: I opened Apple's Disk Utility and checked the desktop-mounted volume Terabyte (Mount Point: /Volumes/Terabyte), the resulting volume from opening and uncompressing the .dmg "Terabyte".
    Disk Utility reported: "Format : Mac OS Extended (Case-sensitive)." Doh!
    Obviously, TB1, the 1 TB USB external drive I'd actually bought as part of a bundle from MacMall when I bought my 27" iMac, and which I had initialized the first day I had the iMac up and running (late November 2009), had somehow gotten initialized as a Case-sensitive drive. How, I don't know, but I suspect the jerk behind the keyboard. Whatever the case, when I created the Terabyte disk image (the drive's original name: when I erased and re-initialized it -- see above -- I renamed it "1TB" for quick identification), the original drive's "Case-sensitive" format was encoded too. So when I tried to drag and drop EVERYTHING from the desktop-mounted volume "Terabyte" to the newly initialized and "blessed" (now THERE's a term from the past!), the system recognized it as an attempt as a total volume backup, and hit me with "The volume [the desktop-mounted volume "Terabyte" -- BB] has the wrong case sensitivity for a backup." And, of course, the reinitialized TB1 was now correctly formatted as NOT "case-sensitive."
    Well, that solved the mystery (BTW, Disk Utility identified the unopened Terabyte.dmg as an "Apple UDIF read-only compressed {zlib}, which is why the .dmg file could be copied to ANY volume, case sensitive or not), but it didn't help me with my problem of having to manually move all that data from the desktop-mounted volume "Terabyte" to TB1. I tried to find a way to correct the problem at the .dmg AND opened-volume-from-.dmg level with every disk utility I had, to no avail.
    Sorry for the long exposition, but others may trip over this "case-sensitive" rock in the road, and I wanted to make the case as clear as possible.
    So my problem remains: other than coal shovel by coal shovel, is there any way to get all the data off this case-sensitive desktop-mounted volume "Terabyte" and onto TB1.
    Not that I know whether it would made any difference or not, one of the things that got me into this situation was my inability to get "Time Machine" properly configured so it wasn't making new back-ups every (no lie) 15 minutes.
    Philosophical bonus question: what's the need for this "case-sensitive," "NOT case-sensitive" option for disk initialization?
    As always, thanks for any help.
    Bart Brown

    "Am I to understand that you have a case-sensitive volume with data that you want to copy to a case-insensitive volume? And the Finder won't let you do it? If that's what the problem is, the reason should be obvious: on the source volume, you may have two files in the same folder whose names differ only in case. When copying that folder to the target volume, it's not clear what the Finder should do."
    Yes, I understand all that... NOW.
    What I had (have) is a USB external 1TB drive (henceforth known as "Terabyte") that I bought with my 27" iMac. I formatted, and put a minimal (to make it bootable) system on Terabyte the same day back in late November 2009 that I set up my 27" iMac. Somehow -- I don't know how -- Terabyte got initialized as "case-sensitive." I didn't even know at the time that there WAS such a thing as "case-sensitive" or "NOT case-sensitive" format.
    Sunday morning (05/08/11), Drive Pulse, a toolbar-resident utility (that's Part of Drive Genius 3) that monitors internal and external drives for physical, problems, volume consistency problems, and volume fragmentation, reported a single bad block on the volume Terabyte, advising me that it would be best if I re-formatted Terabyte ASAP. I thought I could open Terabyte in a Finder window, Select All, and drag everything on the drive to ANOTHER USB external drive of 2 TB capacity (henceforth known as TB2). When I tried to do that, I got an error message:
    "The volume has the wrong case sensitivity for a backup."
    First I'd heard of "case sensitivity" -- I'm not too bright, as you seem to have realized.
    Oddly enough (to me), I could move huge chunks of data, including a folder of 40GB, from Terabyte to TB2 with no problem.
    Then the scenario unfolded per my too-convoluted message: several hours of trying things on my own, including making a .dmg of Terabyte (henceforth to be known as Terabyte.dmg) -- which left me with the exact same problem as described in the previous 4 paragraphs; and my 3 hours on the phone with AppleCare, who at least explained this case-sensitive business, but, after some shot-in-the-dark brainstorming -- tough to do with only one brain, and THAT on the OTHER end of the line --  the very pleasant AppleCare rep and I ended up equally perplexed and clueless as to how to get around the fact that a .dmg of a case-sensitive volume, while not case-sensitive in its "image" form (Terabyte.dmg), and thus able be transferred to TB1 or TB2 with no problems whatsoever, when opened -- either by double-clicking or opening in Disk Utility -- produced a desktop-mounted volume (henceforth known as the volume "Terabyte," the original name of the case-sensitive volume from which TB1.dmg had been made) that had the same case-sensitivity as the original from which it was made.
    In the meantime, having gotten the data I needed to save off the physical USB "case-sensitive" volume Terabyte in the form of Terabyte.dmg, I erased and re-initialized the physical USB "case-sensitive" volume Terabyte, getting rif of the case sensitivity, and renaming it TB1. But it all left me back at square one, EXCEPT I had saved my data from the original "Terabyte" drive, and reformatted that drive to a NON- case-sensitive data now named TB1. The confusion here stems from the fact that problem case-sensitive drive, from which I made Terabyte.dmg, was originally named "Terabyte". When I re-initialized it as a NON case-sensitive drive, I renamed it TB1. I'm sorry about the confusing nomenclature, which I've tried to improve upon from my original message -- usual text-communication problem: the writer knows what he has in mind, but the reader can only go by what's written.
    So, anyway, I still have the same problem, the desktop-mounted volume "Terabyte" still cannot be transferred in one whole chunk to either my internal drive, TB1, TB2, as the Finder interprets it as a volume backup (which it is), and reads the desktop-mounted volume "Terabyte" as case-sensitive, as the original volume -- from which the disk image Terabyte.dmg was made -- had been at the time I made it. 
    "As long as that situation doesn't arise, you should be able to make the copy with a tool that's less fastidious than the Finder, such as cp or rsync."
    I'm afraid I have no idea what "cp or rsync" are. I'd be happy to be educated. That's why I came here.
    Bart Brown
    Message was edited by: Bartbrn
    Just trying to unmuddy the water a bit,,,

  • Specific Identification Cost for batch managed items (Follow-Up from P2P)

    Specific Identification Cost method is used for serial and batch managed item. Using this method, the outbound cost of such items would be the original cost of specific goods, which can be determined according to the serial or batch number of that item.
    Business One allows the user to receive batch managed items with a batch number that already exists in the DB. It’s possible that the received quantity is added to on-hand quantity in the warehouse. In such case, the quantity on-hand of that batch and the received quantity may have different costs.
    What should be the system behavior in such case:
    1. Block receipts to the same batch with different costs.
    2. Write the difference to a price difference account, as done in Standard Cost method.
    3. Manage the batch cost with Moving Average method.
    This thread is continuation from 'Specific Identification Cost for batch managed Items' <a href="http://p2p.sap.com/businessoneforum?type=join&login=1&uid=41FB661A76CED536C825C4E2B6FF4397&cid=91&go=z37225">discussion</a> in P2P SAP Business One Forum (Product Development Collaboration).
    Previous discussion on P2P is summarized in the attached file.

    Hi Peter,
    This is a very important functionality that you are describing here. For example, in the Steel industry, it could be extremely useful to cost by batch or serial number.
    If you receive a batch that already exists in the system and if the costing method for the product is moving average, then teh cost of the batch should be calculated based on the moving average as well.
    If the costing method is standard, then the cost should go in a variance account.
    If the costing method is FIFO, then it is a getting trickier...
    Regards,
    Vincent

  • IBase search result list not showing in Account Identification

    Hi Gurus,
    I'm new to CRM and we have an upgrade issue. We just migrated to EHP3 for SAP CRM 7.0. After the migration, the installed Base result list is not showing in the Account Identification screen. We have the requirement to show the installed base on the right side of the confirmed account and also the result list in case the customer have multiple equipments. The first part is working correct and it shows the data if there is only one equipment with the customer. But in cases where there are more than 1, the installed base view shows blank and also the result list does not show. Instead the Interaction History is displayed. I have checked all the forums and the config and it all looks correct. Here is the list of config that we have
    1) I have the Account Identification Profile created and assigned the Object Component 'ICCMP_IBASE'  to it with Auto Search checked ON. This I believe is for the IBase Details which is working fine for single equipments.
    2) Function Profile 'BPIDENT' with value of the Account Identification Profile has been assigned to the Business Profile.
    3) The Installed Base Profile 'DEFAULT_TREE' has been updated to UNCHECK 'Display Tree' as we want the result list.
    4) Function Profile 'IBASE' with value 'DEFAULT_TREE' has been assigned to the Business Profile.
    Am I missing something? The exact same config works perfectly in a box that has not yet been upgraded. Any help would be appreciated...

    Hi,
    I tested this issue and I can reproduce it in my environment. However, as far as I know, this behavior won't affect the usage of the address book.
    I searched the internal resource but I cannot find a bug report regarding this issue. If you have any suggestion about this issue, you can submit a feedback via:
    http://office.microsoft.com/en-US/suggestions.aspx
    Best Regards, 
    Steve Fan
    TechNet Community Support
    It's recommended to download and install
    Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
    programs.

  • SAP CRM 7.0 Webclient - Product Identification (IBase or IObject)

    Dear SAP IC-Experts ,
    I am new in the configuration of the SAP Interaction Center (SAP CRM 7.0) and have a process orientated question.
    In my proyect the company is producing bathroom products which are installed in hotels, private homes, etc.. They sell their products via partner so they in most cases dont know where there products are installed until the end-user calls when they have a service problem. In the Interaction Center I have seen the Account and Product-identification Workcenter Page.
    1. My first question is do I have to use IBase or IObjects to save the proyects in the Database? If I understood correctly IObjects can only be used if I have a serial-number for example which are used for cars or laptops to be able to uniquely identifie a product. As Bathroom products does not have this this kind of identification number to identify a single object I have to use IBase right? Additionaly I the company sells for example 30 times a shower cabine to a hotel I can not use IObject too because there is installed 30 times the same product in different floors and hotel rooms. This leads me to the conclusion that we have to use IBase which leads my directly to the second question
    2. When using IObjects there is a Create-Button to create a new IOBject but this create button does not exists for a IBase in the View. When the end-user is calling me can I create in a very short time the installed base (IBase)? I hope I could make myself clear?
    Basically I need to know if using IBase or IObjects for bathroom products and if using IBase how can I create it quickly as an IC Agent when the client is calling?
    Best Regards
    Oliver

    Hello Oliver,
    Yes, you are correct. The IObject (individual object) is intended primarily for consumer-facing scenarios involving serialized registered products. For a B2B scenario where a company has a footprint of installed products (whether it be HVAC equipment, plumbing systems, faucets, etc.) it is probably preferrably to use the Installed Base object to model the installation.
    As you noticed, there is no native possibility to directly create new Installed Base hierachies from inside the Interaction Center directly (though there is an option for IObjects). The rationale here is that while a contact center agent would often register a new consumer product, they probably would not usually create new Installed Base hierarchies; rather this is something that, like creation of service contracts for example, is typically done by a Service Professional using the ServicePro role. However, you can always add a link to your IC menu to launch the ServicePro screen for IBase maintenance/creation in order to allow the agent to create or maintain the IBase hierarchy. A little cumbersom of course, but definitely a possible workaround.
    Warm regards,
    John

  • Very nice and highly functional iPhone 4 case providing total protection

    Marware C.E.O. Flip-Vue Leather case for iPhone 4
    The C.E.O. Flip-Vue™ for iPhone® 4 is a slim, genuine leather flip-top holster that provides the perfect balance between total protection and convenient access. The leather and suede design is unique and appealing, while the slim belt clip on the back offers multiple carrying options. A storage pocket on the inside of the flip-top lid is perfect for credit cards, business cards, identification, or cash.
    In addition to the front flap protection, the iPhone is cradled snugly in place by an inner structure that maintains access to all buttons and functionality without removing the case. Enjoy your music, or receive calls while your C.E.O. Flip-Vue is open or closed. A durable Velcro™ closure keeps your iPhone securely in the case, and won’t cause antenna or GPS interference like magnet cases. The leather we use is RoHS compliant (Restriction of Hazardous Substances) and better for the environment.
    Features
    • Premium leather flip top case
    • Lid doubles as storage pocket
    • Stylish design with soft interior
    • Built-in, slim belt clip for bag and belt attachment
    • Leather is RoHS compliant
    • Includes: Leather holster case
    These details came from www.marware.com web site, however you can save $$$ by purchasing them online at www.macmall.com for those interested in this type of leather case. I've used this same style and brand name for the Original, 3G & 3G(s) models I've owned the past 3 years with great success and protection. I'm waiting for the one specifically designed for the phone 4 to arrive any day now. This case has enabled me to re-sell all of my iPhones well above what I paid for them, all in which have been in "mint condition" as I feel is a result of using such a great case and I then get the new models for absolutely free due to the profits made on my retired models. I recently sold my White 16G 3G(s) for for $375 which paid for my new iPhone 4, the AppleCare Protection Plan and this new case, all with money left over. It's obviously treated me very well and just thought I'd share this with those "still on the fence" about what case to buy. I also highly doubt that Apple is going to have this as an available option to choose from for free. iPhone 4 is awesome and mine has been operating flawlessly since removing it from the box. Kudos to Steve and the entire Apple Staff responsible for this beautiful and simply magnificent device.

    Yes, don't feel it is as black&white as other posters here, but it is impractical. 
    What is the value of your time for example?  If you are not self-employed, were you still being paid during these 8 hours.  A court would consider actual economic loss, did you lose money during these 8 hours?   And do you/your employer pay customers in similar situations?  In my experience, you get credit based on the service (e.g. the 1 day credit) rather than being paid for your time.
    And on the flip side, if I call up Verizon complaining that my phone doesn't work, and it turns out that I had forgot to charge it, do you want to be billed for the rep's time when it was your mistake?  (Of course, wireline DOES do this, if Verizon dispatches a repair tech and the fault is inside your house etc (without a wiring contract) you do get charged)
    Certainly the one day credit is the minimum they should provide.  As others have said, your real recourse is to return the phone.

  • BP - Add additional Identification type as BPCCOD in Customer during replication

    Hi All,
    We have transferred all business partner from R/3 to CRM via initial load. We have Sold to party & Ship to party which are also assigned the BP role of Financial Partner and being used to create the Dispute Cases however we are unable to create the dispute cases in CRM system and also unable to search open item as Identification type BPCCOD with number as Logical system:Client is missing in the Financial Partner. As far as i know as per the SAP Standard functionality during customer download in CRM ID Type CRM002 gets added with ECC Account number by default.
    So is there any way through which i can get additional ID Type BPCCOD with Number Logical system:Client assigned to Customers during replication and also if there is any standard program to achieve this functionality?
    Thank you
    Anand Kumar

    Hi Anand,
    As per my understanding, you want to add additional Identification type and number while downloading the customer from ECC (Initial load).
    Go to tcode BUPA_CALL_FU.
    choose event CRMIN and refer BUPA_INBOUND_MAIN_CENTRAL FM as an example.
    Copy the FM and create a new FM.
    This FM has the changing parameter of structure BUS_EI_EXTERN.
    Add the code and Modify the data CENTRAL_DATA-IDENT_NUMBER as per your requirement.
    then maintain your function module in BUPA_CALL_FU in the right sequence (after standard FM call).
    I hope this will help you.
    Regards,
    Bala

Maybe you are looking for

  • Items in BOM which need not be procured/produced

    Hi All, SAP does not seem to have the ability to have zero quantity in a BOM. I have certain materials which are in the BOM but i am not procuring/producing them. But I get a order every time i run the MRP. How can i have the material listed in the B

  • Satellite Pro M50: WLan connection loses IP address after 10min

    I have just purchased a Satellite Pro M50. I can connect to router using Congfigfree o.k., but after 10 minutes or so it loses ip-address etc. Have to refresh the wireless connection to reconnect. This continues every 10 min or so.

  • Solaris 10 with Qlogic card facing network issue

    Dear Community, I am facing network issue with one of M5000 server card vender is qlogic and switch is brocarde, if we reset the port from switch side, it will work for nearly 2 hours. after that ping will stop. here is the details. and there is no e

  • Renamed parent directory doesn't stick

    I have a parent directory located on a remote volume on my server. Lightroom chose to name my directory, 2006 at /Volumes/Photos/JimsPhotos/15D RAW This is because there's also another directory on the server named, 2006 at /Volumes/Photos/JimsPhotos

  • Extension compatibility

    I am seriously considering upgrading from Dreamweaver CS3 to CS4 and I would like to know whether extensions working under CS3 are installable in CS4 otherwise my code will, in many cases, not work. Anyone can assist ? Thank you all.