Results 1 to 10 of 10
  1. #1
    Join Date
    Aug 2002
    Location
    Charlotte NC
    Posts
    665

    Unanswered: Advanced Merge code

    I have a bit of a problem, and I have been staring at this all day so I may be making more of this than I need to.

    My situation:

    I need to merge two tables a stage table where I have todays set of data with the data warehouse table where the history is stored.

    The code thus Far:
    Code:
    MERGE INTO CENDW.DW_RKSA_TPDOC_TBL DWTDOPTY
       USING (SELECT STG.TPDOCID, CUSTNO, FKPARTYROLETP, INSTANCE_ID, PARTYNAME, CUNAME, CUADR1, CUADR2, CUADR3, 
    					CITY_NAME, STATE, ZIP_CODE, FKPARTYROLESPECTXT, PARTYROLESPECTXT, FKPAYTERMTPAUTPOP, PAYTERMTPAUTOPOP, 
    					PARTYROLETP, FKGEOAREACITYID, GEOAREACITYNAME, RKSTCITYCODE, FKGEOAREACNTRYID, GEOAREACNTRYNAME, RKST, 
    					FKSHIPMENTVERSION, FKTRANSPORTDOCVER, GCSS_CRT_TS, GCSS_UPD_TS, RKSA_UPD_TS, TPC_UPD_TS 
    					FROM CENSTG.STG_RKSA_TPDOC_PARTY_TBL STG INNER JOIN CENSTG.STG_RKSA_TPDOC_CHANGED_TPDOC_TBL CHGTDO on STG.TPDOCID = CHGTDO.TPDOCID) STGTDOPTY
       ON (DWTDOPTY.TPDOCID = STGTDOPTY.TPDOCID )
       WHEN MATCHED THEN 
          UPDATE SET
    					TPDOCID = STGTDOPTY.TPDOCID,
    					CUSTNO = STGTDOPTY.CUSTNO, 
    					FKPARTYROLETP = STGTDOPTY.FKPARTYROLETP, 
    					INSTANCE_ID = STGTDOPTY.INSTANCE_ID, 
    					PARTYNAME = STGTDOPTY.PARTYNAME, 
    					CUNAME = STGTDOPTY.CUNAME, 
    					CUADR1 = STGTDOPTY.CUADR1, 
    					CUADR2 = STGTDOPTY.CUADR2, 
    					CUADR3 = STGTDOPTY.CUADR3, 
    					CITY_NAME = STGTDOPTY.CITY_NAME, 
    					STATE = STGTDOPTY.STATE, 
    					ZIP_CODE = STGTDOPTY.ZIP_CODE, 
    					FKPARTYROLESPECTXT = STGTDOPTY.FKPARTYROLESPECTXT, 
    					PARTYROLESPECTXT = STGTDOPTY.PARTYROLESPECTXT, 
    					FKPAYTERMTPAUTPOP = STGTDOPTY.FKPAYTERMTPAUTPOP, 
    					PAYTERMTPAUTOPOP = STGTDOPTY.PAYTERMTPAUTOPOP, 
    					PARTYROLETP = STGTDOPTY.PARTYROLETP, 
    					FKGEOAREACITYID = STGTDOPTY.FKGEOAREACITYID, 
    					GEOAREACITYNAME = STGTDOPTY.GEOAREACITYNAME, 
    					RKSTCITYCODE = STGTDOPTY.RKSTCITYCODE, 
    					FKGEOAREACNTRYID = STGTDOPTY.FKGEOAREACNTRYID, 
    					GEOAREACNTRYNAME = STGTDOPTY.GEOAREACNTRYNAME, 
    					RKST = STGTDOPTY.RKST, 
    					FKSHIPMENTVERSION = STGTDOPTY.FKSHIPMENTVERSION, 
    					FKTRANSPORTDOCVER = STGTDOPTY.FKTRANSPORTDOCVER, 
    					GCSS_CRT_TS = STGTDOPTY.GCSS_CRT_TS, 
    					GCSS_UPD_TS = STGTDOPTY.GCSS_UPD_TS, 
    					RKSA_UPD_TS = STGTDOPTY.RKSA_UPD_TS, 
    					TPC_UPD_TS = STGTDOPTY.TPC_UPD_TS,
    					DWH_UPDATE_TIMESTAMP = CURRENT TIMESTAMP
       WHEN NOT MATCHED THEN
          INSERT
             (TPDOCID, CUSTNO, FKPARTYROLETP, INSTANCE_ID, PARTYNAME, CUNAME, CUADR1, CUADR2, CUADR3, 
    					CITY_NAME, STATE, ZIP_CODE, FKPARTYROLESPECTXT, PARTYROLESPECTXT, FKPAYTERMTPAUTPOP, PAYTERMTPAUTOPOP, 
    					PARTYROLETP, FKGEOAREACITYID, GEOAREACITYNAME, RKSTCITYCODE, FKGEOAREACNTRYID, GEOAREACNTRYNAME, RKST, 
    					FKSHIPMENTVERSION, FKTRANSPORTDOCVER, GCSS_CRT_TS, GCSS_UPD_TS, RKSA_UPD_TS, TPC_UPD_TS)
          VALUES (STGTDOPTY.TPDOCID, STGTDOPTY.CUSTNO, STGTDOPTY.FKPARTYROLETP, STGTDOPTY.INSTANCE_ID, STGTDOPTY.PARTYNAME, 
          				STGTDOPTY.CUNAME, STGTDOPTY.CUADR1, STGTDOPTY.CUADR2, STGTDOPTY.CUADR3, STGTDOPTY.CITY_NAME, STGTDOPTY.STATE, 
          				STGTDOPTY.ZIP_CODE, STGTDOPTY.FKPARTYROLESPECTXT, STGTDOPTY.PARTYROLESPECTXT, STGTDOPTY.FKPAYTERMTPAUTPOP, STGTDOPTY.PAYTERMTPAUTOPOP, 
    							STGTDOPTY.PARTYROLETP, STGTDOPTY.FKGEOAREACITYID, STGTDOPTY.GEOAREACITYNAME, STGTDOPTY.RKSTCITYCODE, STGTDOPTY.FKGEOAREACNTRYID, STGTDOPTY.GEOAREACNTRYNAME, RKST, 
    							STGTDOPTY.FKSHIPMENTVERSION, STGTDOPTY.FKTRANSPORTDOCVER, STGTDOPTY.GCSS_CRT_TS, STGTDOPTY.GCSS_UPD_TS, 
    							STGTDOPTY.RKSA_UPD_TS, STGTDOPTY.TPC_UPD_TS)
    Notice the ON section of my code. When this runs I get the error that the column CUSTNO cannot be updated. Custno is part of a composite primary key on both tables.

    The full key is as follows:
    TPDOCID
    CUSTNO
    FKPARTYROLETP

    Does the error that I am recieving indicate that I need to be joining on all three columns? If so how do I do that? I have tried putting all Three within the parentises of the ON clause, and I have tried adding the key word and to the ON clause two other times, both of which were unsucessful.

    I have been stairing at this code all day so it is starting to blur. A new set of eyes would be a great help.

    Thanks for anything you can give
    Jim
    ------------
    And back to SQL Server....I always find my way home
    View my Linkedin profile

  2. #2
    Join Date
    Jan 2003
    Posts
    4,292
    Provided Answers: 5
    Your ON clause should look like:

    ON (DWTDOPTY.TPDOCID = STGTDOPTY.TPDOCID and DWTDOPTY.CUSTNO = STGTDOPTY.CUSTNO and DWTDOPTY.FKPARTYROLETP = STGTDOPTY.FKPARTYROLETP)

    Also remove these columns from the update section.

    Andy

  3. #3
    Join Date
    Aug 2002
    Location
    Charlotte NC
    Posts
    665
    I changed code as suggested and recieved the following error


    SQL0206N "DWTDOPTY.CUSTNO " is not valid in the context where it is used.


    Code:
    MERGE INTO CENDW.DW_RKSA_TPDOC_TBL DWTDOPTY
       USING (SELECT STG.TPDOCID, CUSTNO, FKPARTYROLETP, INSTANCE_ID, PARTYNAME, CUNAME, CUADR1, CUADR2, CUADR3, 
    					CITY_NAME, STATE, ZIP_CODE, FKPARTYROLESPECTXT, PARTYROLESPECTXT, FKPAYTERMTPAUTPOP, PAYTERMTPAUTOPOP, 
    					PARTYROLETP, FKGEOAREACITYID, GEOAREACITYNAME, RKSTCITYCODE, FKGEOAREACNTRYID, GEOAREACNTRYNAME, RKST, 
    					FKSHIPMENTVERSION, FKTRANSPORTDOCVER, GCSS_CRT_TS, GCSS_UPD_TS, RKSA_UPD_TS, TPC_UPD_TS 
    					FROM CENSTG.STG_RKSA_TPDOC_PARTY_TBL STG INNER JOIN CENSTG.STG_RKSA_TPDOC_CHANGED_TPDOC_TBL CHGTDO on STG.TPDOCID = CHGTDO.TPDOCID) STGTDOPTY
       ON (DWTDOPTY.TPDOCID = STGTDOPTY.TPDOCID and DWTDOPTY.CUSTNO = STGTDOPTY.CUSTNO and DWTDOPTY.FKPARTYROLETP = STGTDOPTY.FKPARTYROLETP)
       WHEN MATCHED THEN 
          UPDATE SET
    					INSTANCE_ID = STGTDOPTY.INSTANCE_ID, 
    					PARTYNAME = STGTDOPTY.PARTYNAME, 
    					CUNAME = STGTDOPTY.CUNAME, 
    					CUADR1 = STGTDOPTY.CUADR1, 
    					CUADR2 = STGTDOPTY.CUADR2, 
    					CUADR3 = STGTDOPTY.CUADR3, 
    					CITY_NAME = STGTDOPTY.CITY_NAME, 
    					STATE = STGTDOPTY.STATE, 
    					ZIP_CODE = STGTDOPTY.ZIP_CODE, 
    					FKPARTYROLESPECTXT = STGTDOPTY.FKPARTYROLESPECTXT, 
    					PARTYROLESPECTXT = STGTDOPTY.PARTYROLESPECTXT, 
    					FKPAYTERMTPAUTPOP = STGTDOPTY.FKPAYTERMTPAUTPOP, 
    					PAYTERMTPAUTOPOP = STGTDOPTY.PAYTERMTPAUTOPOP, 
    					PARTYROLETP = STGTDOPTY.PARTYROLETP, 
    					FKGEOAREACITYID = STGTDOPTY.FKGEOAREACITYID, 
    					GEOAREACITYNAME = STGTDOPTY.GEOAREACITYNAME, 
    					RKSTCITYCODE = STGTDOPTY.RKSTCITYCODE, 
    					FKGEOAREACNTRYID = STGTDOPTY.FKGEOAREACNTRYID, 
    					GEOAREACNTRYNAME = STGTDOPTY.GEOAREACNTRYNAME, 
    					RKST = STGTDOPTY.RKST, 
    					FKSHIPMENTVERSION = STGTDOPTY.FKSHIPMENTVERSION, 
    					FKTRANSPORTDOCVER = STGTDOPTY.FKTRANSPORTDOCVER, 
    					GCSS_CRT_TS = STGTDOPTY.GCSS_CRT_TS, 
    					GCSS_UPD_TS = STGTDOPTY.GCSS_UPD_TS, 
    					RKSA_UPD_TS = STGTDOPTY.RKSA_UPD_TS, 
    					TPC_UPD_TS = STGTDOPTY.TPC_UPD_TS,
    					DWH_UPDATE_TIMESTAMP = CURRENT TIMESTAMP
       WHEN NOT MATCHED THEN
          INSERT
             (TPDOCID, CUSTNO, FKPARTYROLETP, INSTANCE_ID, PARTYNAME, CUNAME, CUADR1, CUADR2, CUADR3, 
    					CITY_NAME, STATE, ZIP_CODE, FKPARTYROLESPECTXT, PARTYROLESPECTXT, FKPAYTERMTPAUTPOP, PAYTERMTPAUTOPOP, 
    					PARTYROLETP, FKGEOAREACITYID, GEOAREACITYNAME, RKSTCITYCODE, FKGEOAREACNTRYID, GEOAREACNTRYNAME, RKST, 
    					FKSHIPMENTVERSION, FKTRANSPORTDOCVER, GCSS_CRT_TS, GCSS_UPD_TS, RKSA_UPD_TS, TPC_UPD_TS)
          VALUES (STGTDOPTY.TPDOCID, STGTDOPTY.CUSTNO, STGTDOPTY.FKPARTYROLETP, STGTDOPTY.INSTANCE_ID, STGTDOPTY.PARTYNAME, 
          				STGTDOPTY.CUNAME, STGTDOPTY.CUADR1, STGTDOPTY.CUADR2, STGTDOPTY.CUADR3, STGTDOPTY.CITY_NAME, STGTDOPTY.STATE, 
          				STGTDOPTY.ZIP_CODE, STGTDOPTY.FKPARTYROLESPECTXT, STGTDOPTY.PARTYROLESPECTXT, STGTDOPTY.FKPAYTERMTPAUTPOP, STGTDOPTY.PAYTERMTPAUTOPOP, 
    							STGTDOPTY.PARTYROLETP, STGTDOPTY.FKGEOAREACITYID, STGTDOPTY.GEOAREACITYNAME, STGTDOPTY.RKSTCITYCODE, STGTDOPTY.FKGEOAREACNTRYID, STGTDOPTY.GEOAREACNTRYNAME, RKST, 
    							STGTDOPTY.FKSHIPMENTVERSION, STGTDOPTY.FKTRANSPORTDOCVER, STGTDOPTY.GCSS_CRT_TS, STGTDOPTY.GCSS_UPD_TS, 
    							STGTDOPTY.RKSA_UPD_TS, STGTDOPTY.TPC_UPD_TS)
    ------------
    And back to SQL Server....I always find my way home
    View my Linkedin profile

  4. #4
    Join Date
    Jan 2003
    Posts
    4,292
    Provided Answers: 5
    I am not sure if this will work, but on your fullselect in the using clause, name each column.

    USING (SELECT STG.TPDOCID as TPDOCID, CUSTNO as CUSTNO, FKPARTYROLETP as FKPARTYROLETP, INSTANCE_ID as INSTANCE_ID, PARTYNAME as PARTYNAME, ...

    Andy

  5. #5
    Join Date
    Aug 2002
    Location
    Charlotte NC
    Posts
    665
    I have aliased the three key columns as suggested. There was no change in the error produced.

    Its acting like it does not like the key column from the destination table...
    ------------
    And back to SQL Server....I always find my way home
    View my Linkedin profile

  6. #6
    Join Date
    Jan 2003
    Posts
    4,292
    Provided Answers: 5
    Oops, I was looking in the wrong place. What is the DDL for the CENDW.DW_RKSA_TPDOC_TBL table?

    Andy

  7. #7
    Join Date
    Aug 2002
    Location
    Charlotte NC
    Posts
    665
    DDL is as follows

    Code:
    ------------------------------------------------
    -- DDL Statements for table "CENDW   "."DW_RKSA_TPDOC_PARTY_TBL"
    ------------------------------------------------
     
    
    CREATE TABLE "CENDW   "."DW_RKSA_TPDOC_PARTY_TBL"  (
    		  "TPDOCID" VARCHAR(9) NOT NULL , 
    		  "CUSTNO" VARCHAR(11) NOT NULL , 
    		  "FKPARTYROLETP" VARCHAR(13) NOT NULL , 
    		  "INSTANCE_ID" VARCHAR(13) , 
    		  "PARTYNAME" VARCHAR(60) , 
    		  "CUNAME" VARCHAR(36) , 
    		  "CUADR1" VARCHAR(36) , 
    		  "CUADR2" VARCHAR(36) , 
    		  "CUADR3" VARCHAR(36) , 
    		  "CITY_NAME" VARCHAR(36) , 
    		  "STATE" VARCHAR(2) , 
    		  "ZIP_CODE" VARCHAR(10) , 
    		  "FKPARTYROLESPECTXT" VARCHAR(13) , 
    		  "PARTYROLESPECTXT" VARCHAR(30) , 
    		  "FKPAYTERMTPAUTPOP" VARCHAR(13) , 
    		  "PAYTERMTPAUTOPOP" VARCHAR(30) , 
    		  "PARTYROLETP" VARCHAR(40) , 
    		  "FKGEOAREACITYID" VARCHAR(13) , 
    		  "GEOAREACITYNAME" VARCHAR(35) , 
    		  "RKSTCITYCODE" VARCHAR(15) , 
    		  "FKGEOAREACNTRYID" VARCHAR(13) , 
    		  "GEOAREACNTRYNAME" VARCHAR(35) , 
    		  "RKST" VARCHAR(15) , 
    		  "FKSHIPMENTVERSION" VARCHAR(13) , 
    		  "FKTRANSPORTDOCVER" VARCHAR(13) , 
    		  "GCSS_CRT_TS" TIMESTAMP , 
    		  "GCSS_UPD_TS" TIMESTAMP , 
    		  "RKSA_UPD_TS" TIMESTAMP , 
    		  "TPC_UPD_TS" TIMESTAMP , 
    		  "DWH_INSERT_TIMESTAMP" TIMESTAMP WITH DEFAULT CURRENT TIMESTAMP , 
    		  "DWH_UPDATE_TIMESTAMP" TIMESTAMP )   
    		 IN "TS_16K" ; 
    
    
    -- DDL Statements for primary key on Table "CENDW   "."DW_RKSA_TPDOC_PARTY_TBL"
    
    ALTER TABLE "CENDW   "."DW_RKSA_TPDOC_PARTY_TBL" 
    	ADD PRIMARY KEY
    		("TPDOCID",
    		 "CUSTNO",
    		 "FKPARTYROLETP");
    
    
    
    -- DDL Statements for indexes on Table "CENDW   "."DW_RKSA_TPDOC_PARTY_TBL"
    
    CREATE UNIQUE INDEX "CENDW   "."ACU_RKSATDPA_01" ON "CENDW   "."DW_RKSA_TPDOC_PARTY_TBL" 
    		("TPDOCID" ASC,
    		 "FKPARTYROLETP" ASC,
    		 "CUSTNO" ASC)
    		CLUSTER ALLOW REVERSE SCANS;
    ------------
    And back to SQL Server....I always find my way home
    View my Linkedin profile

  8. #8
    Join Date
    Jan 2003
    Posts
    4,292
    Provided Answers: 5
    Check the merge table (MERGE INTO CENDW.DW_RKSA_TPDOC_TBL DWTDOPTY)
    The DDL you provided is not the name of this table.

    Andy

  9. #9
    Join Date
    Aug 2002
    Location
    Charlotte NC
    Posts
    665
    AGGGGGGG I knew I needed another set of eyes.

    Thanks for the obvious catch

    Corrected Code

    Code:
    MERGE INTO CENDW.DW_RKSA_TPDOC_PARTY_TBL DWTDOPTY
       USING (SELECT STG.TPDOCID as TPDOCID, CUSTNO as CUSTNO, FKPARTYROLETP as FKPARTYROLETP, INSTANCE_ID, PARTYNAME, CUNAME, CUADR1, CUADR2, CUADR3, 
    					CITY_NAME, STATE, ZIP_CODE, FKPARTYROLESPECTXT, PARTYROLESPECTXT, FKPAYTERMTPAUTPOP, PAYTERMTPAUTOPOP, 
    					PARTYROLETP, FKGEOAREACITYID, GEOAREACITYNAME, RKSTCITYCODE, FKGEOAREACNTRYID, GEOAREACNTRYNAME, RKST, 
    					FKSHIPMENTVERSION, FKTRANSPORTDOCVER, GCSS_CRT_TS, GCSS_UPD_TS, RKSA_UPD_TS, TPC_UPD_TS 
    					FROM CENSTG.STG_RKSA_TPDOC_PARTY_TBL STG INNER JOIN CENSTG.STG_RKSA_TPDOC_CHANGED_TPDOC_TBL CHGTDO on STG.TPDOCID = CHGTDO.TPDOCID) STGTDOPTY
       ON (DWTDOPTY.TPDOCID = STGTDOPTY.TPDOCID and DWTDOPTY.CUSTNO = STGTDOPTY.CUSTNO and DWTDOPTY.FKPARTYROLETP = STGTDOPTY.FKPARTYROLETP)
       WHEN MATCHED THEN 
          UPDATE SET
    					INSTANCE_ID = STGTDOPTY.INSTANCE_ID, 
    					PARTYNAME = STGTDOPTY.PARTYNAME, 
    					CUNAME = STGTDOPTY.CUNAME, 
    					CUADR1 = STGTDOPTY.CUADR1, 
    					CUADR2 = STGTDOPTY.CUADR2, 
    					CUADR3 = STGTDOPTY.CUADR3, 
    					CITY_NAME = STGTDOPTY.CITY_NAME, 
    					STATE = STGTDOPTY.STATE, 
    					ZIP_CODE = STGTDOPTY.ZIP_CODE, 
    					FKPARTYROLESPECTXT = STGTDOPTY.FKPARTYROLESPECTXT, 
    					PARTYROLESPECTXT = STGTDOPTY.PARTYROLESPECTXT, 
    					FKPAYTERMTPAUTPOP = STGTDOPTY.FKPAYTERMTPAUTPOP, 
    					PAYTERMTPAUTOPOP = STGTDOPTY.PAYTERMTPAUTOPOP, 
    					PARTYROLETP = STGTDOPTY.PARTYROLETP, 
    					FKGEOAREACITYID = STGTDOPTY.FKGEOAREACITYID, 
    					GEOAREACITYNAME = STGTDOPTY.GEOAREACITYNAME, 
    					RKSTCITYCODE = STGTDOPTY.RKSTCITYCODE, 
    					FKGEOAREACNTRYID = STGTDOPTY.FKGEOAREACNTRYID, 
    					GEOAREACNTRYNAME = STGTDOPTY.GEOAREACNTRYNAME, 
    					RKST = STGTDOPTY.RKST, 
    					FKSHIPMENTVERSION = STGTDOPTY.FKSHIPMENTVERSION, 
    					FKTRANSPORTDOCVER = STGTDOPTY.FKTRANSPORTDOCVER, 
    					GCSS_CRT_TS = STGTDOPTY.GCSS_CRT_TS, 
    					GCSS_UPD_TS = STGTDOPTY.GCSS_UPD_TS, 
    					RKSA_UPD_TS = STGTDOPTY.RKSA_UPD_TS, 
    					TPC_UPD_TS = STGTDOPTY.TPC_UPD_TS,
    					DWH_UPDATE_TIMESTAMP = CURRENT TIMESTAMP
       WHEN NOT MATCHED THEN
          INSERT
             (TPDOCID, CUSTNO, FKPARTYROLETP, INSTANCE_ID, PARTYNAME, CUNAME, CUADR1, CUADR2, CUADR3, 
    					CITY_NAME, STATE, ZIP_CODE, FKPARTYROLESPECTXT, PARTYROLESPECTXT, FKPAYTERMTPAUTPOP, PAYTERMTPAUTOPOP, 
    					PARTYROLETP, FKGEOAREACITYID, GEOAREACITYNAME, RKSTCITYCODE, FKGEOAREACNTRYID, GEOAREACNTRYNAME, RKST, 
    					FKSHIPMENTVERSION, FKTRANSPORTDOCVER, GCSS_CRT_TS, GCSS_UPD_TS, RKSA_UPD_TS, TPC_UPD_TS)
          VALUES (STGTDOPTY.TPDOCID, STGTDOPTY.CUSTNO, STGTDOPTY.FKPARTYROLETP, STGTDOPTY.INSTANCE_ID, STGTDOPTY.PARTYNAME, 
          				STGTDOPTY.CUNAME, STGTDOPTY.CUADR1, STGTDOPTY.CUADR2, STGTDOPTY.CUADR3, STGTDOPTY.CITY_NAME, STGTDOPTY.STATE, 
          				STGTDOPTY.ZIP_CODE, STGTDOPTY.FKPARTYROLESPECTXT, STGTDOPTY.PARTYROLESPECTXT, STGTDOPTY.FKPAYTERMTPAUTPOP, STGTDOPTY.PAYTERMTPAUTOPOP, 
    							STGTDOPTY.PARTYROLETP, STGTDOPTY.FKGEOAREACITYID, STGTDOPTY.GEOAREACITYNAME, STGTDOPTY.RKSTCITYCODE, STGTDOPTY.FKGEOAREACNTRYID, STGTDOPTY.GEOAREACNTRYNAME, RKST, 
    							STGTDOPTY.FKSHIPMENTVERSION, STGTDOPTY.FKTRANSPORTDOCVER, STGTDOPTY.GCSS_CRT_TS, STGTDOPTY.GCSS_UPD_TS, 
    							STGTDOPTY.RKSA_UPD_TS, STGTDOPTY.TPC_UPD_TS)
    ------------
    And back to SQL Server....I always find my way home
    View my Linkedin profile

  10. #10
    Join Date
    Jan 2003
    Posts
    4,292
    Provided Answers: 5
    Glad to be of help. We have all been there before.

    The give-away was the "not valid in the context where it is used" error.

    Andy

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •