How to UPDATE 2 Tables simultaneously?

Hi Gurus
I have two Tables : GPF_TXN and SAL_TXN which need to be updated on matching basis. The Table structures of which are as below :
CREATED TABLE GPF_TXN
ECODE               NUMBER(5),
PF_NO               VARCHAR2(10),
ENAME               VARCHAR2(50),
MONTH               NUMBER(2),
VCH_CD               VARCHAR2(1),
VID               VARCHAR2(17),
AMT               NUMBER(15,2),
CODE               VARCHAR2(1),
UPCD               VARCHAR2(2)
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
2, '1963/00670', 'BALBIR SETH', 12, 'F', 'TV201101140000080', 6100, NULL
, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
132, '1963/01782', 'JAG NARAIN', 12, 'F', 'TV201101140000078', 5264, NULL, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
257, '1963/01082', 'MOHINDER', 12, 'B', 'TV201101140000080', 5256, NULL, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
340, '1963/00745', 'BHARAT BHUSHAN', 12, 'B', 'TV201101140000080', 7892
, NULL, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
456, '1963/01079', 'JAGDISH SINGH ', 12, 'B', 'TV201101140000080', 6311, NULL, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
460, '1963/00386', 'PRITAM', 12, 'B', 'TV201101140000078', 4893, NULL
, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
462, '1963/01525', 'ASHOK KUMAR ', 12, 'B', 'TV201101140000080', 6311, 'E', NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
465, '1963/01519', 'KARAM SINGH', 12, 'S', 'TV201101140000078', 1227, NULL, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
465, '1963/01519', 'KARAM SINGH', 12, 'S', 'TV201101140000080', 7436, NULL, NULL);
INSERT INTO GPF_MATCH ( ECODE, PF_NO, ENAME, MONTH, VCH_CD, VID, AMT, CODE,
UPCD ) VALUES (
468, '1963/00776', 'BADAL SINGH', 12, 'B', 'TV201101140000080', 3645, NULL
, NULL);
commit;
CREATED TABLE SAL_TXN
DISB_STATUS          VARCHAR2(1),
SAL_TYPE          VARCHAR2(1),
ECODE               NUMBER(5),
PF_NO               VARCHAR2(10),
PAY_FROM          DATE,
PAY_UPTO          DATE,
PAY_DAYS          NUMBER(5,2),
TOT_EARN          NUMBER(15,2),
TOT_DEDUCTION          NUMBER(15,2),
NET_PAY               NUMBER(15,2),
GROSS_PAY          NUMBER(15,2),
PAID_STATUS          VARCHAR2(1),
PAID_DATE          DATE,
PAY_MODE          VARCHAR2(1),
CHQ_NO               VARCHAR2(10),
CHQ_DATE          DATE,
BASIC               NUMBER(15,2),
DA_1               NUMBER(15,2),
HRA_1               NUMBER(15,2),
CCA               NUMBER(15,2),
MEDIC               NUMBER(15,2),
CONVY               NUMBER(15,2),
S_ALW               NUMBER(15,2),
GPF               NUMBER(15,2),
AGPF               NUMBER(15,2),
LIC               NUMBER(15,2),
TDS               NUMBER(15,2),
S_PAY               NUMBER(15,2),
W_ALL               NUMBER(15,2),
IR1               NUMBER(15,2),
IR2               NUMBER(15,2),
CPALL               NUMBER(15,2),
DPALL               NUMBER(15,2),
GPF_1               NUMBER(15,2),
GPF_2               NUMBER(15,2),
ARGPF               NUMBER(15,2),
GPF2004               NUMBER(15,2)
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 2, '1963/00670',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201102120000016',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 16450, 26686, NULL, NULL, NULL, NULL, NULL, 6311, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 2, '1963/00670',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201103140000017',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 16450, 26686, NULL, NULL, NULL, NULL, NULL, 6311, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 2, '1963/00670',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201101130000010',  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 15900, 25794, NULL, NULL, NULL, NULL, NULL, 6100, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'Y', 'S', 132, '1963/01782',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, 47759, 11600
, 36159, 47759, '3',  TO_Date( '02/15/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 'C', 'TN201101280000001',  TO_Date( '01/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 14250, 23117, 1683, 0, 350, 75, 0, 5475, 0, 0, 5000, 60, 30, 0, 0, 0, 0, 0, 0, 0
, 0);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'Y', 'S', 132, '1963/01782',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, 47759, 10375
, 37384, 47759, '3',  TO_Date( '03/15/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 'C', 'TN201102240000004',  TO_Date( '02/24/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 14250, 23117, 1683, 0, 350, 75, 0, 5475, 0, 0, 4400, 60, 30, 0, 0, 0, 0, 0, 0, 0
, 0);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'Y', 'S', 132, '1963/01782',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, 45936, 11389
, 34547, 45936, '3',  TO_Date( '01/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 'C', 'TN201012240000001',  TO_Date( '12/24/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 13700, 22225, 1618, 0, 350, 75, 0, 5264, 0, 0, 5000, 60, 30, 0, 0, 0, 0, 0, 0, 0
, 0);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 257, '1963/01082',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201102120000026',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 13700, 22225, NULL, NULL, NULL, NULL, NULL, 5256, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 257, '1963/01082',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/15/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201103140000026',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 13700, 22225, NULL, NULL, NULL, NULL, NULL, 5256, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 257, '1963/01082',  TO_Date( '02/16/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 13, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201103140000032',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 433, 674, NULL, NULL, NULL, NULL, NULL, 163, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 257, '1963/01082',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201101130000021',  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 13700, 22225, NULL, NULL, NULL, NULL, NULL, 5256, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 340, '1963/00745',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201102120000041'
,  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 20570, 33370, NULL
, NULL, NULL, NULL, NULL, 7892, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 340, '1963/00745',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/15/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 15, NULL, NULL, NULL
, NULL, '1',  TO_Date( '02/25/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TB201102250000001'
,  TO_Date( '02/25/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 0, 0, NULL, NULL
, NULL, NULL, NULL, 166763, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 340, '1963/00745',  TO_Date( '02/16/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 13, NULL, NULL, NULL
, NULL, '1',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201103140000040'
,  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 20570, 33370, NULL
, NULL, NULL, NULL, NULL, 7892, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 340, '1963/00745',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1',  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201101130000039'
,  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 20570, 33370, NULL
, NULL, NULL, NULL, NULL, 7892, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 381, '1963/00747',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201102120000040',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 1463, 1095, NULL, NULL, NULL, NULL, NULL, 408, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 445, '1963/00921',  TO_Date( '03/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '03/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1',  TO_Date( '04/11/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TB201104110000002'
,  TO_Date( '04/11/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 0, 0, NULL, NULL
, NULL, NULL, NULL, 203511, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 456, '1963/01079',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201102120000044',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 17000, 27578, NULL, NULL, NULL, NULL, NULL, 6522, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 456, '1963/01079',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201103140000042',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 17000, 27578, NULL, NULL, NULL, NULL, NULL, 6522, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 456, '1963/01079',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201101130000041',  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 16450, 26686, NULL, NULL, NULL, NULL, NULL, 6311, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'Y', 'S', 460, '1963/00386',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, 44347, 17974
, 26373, 44347, '3', NULL, 'B', 'TV201101280000010',  TO_Date( '01/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 12675, 20563, 2995, 120, 350, 75, 0, 4893, 0, 956, 4000, 250, 30, 0, 0, 0, 0, 0
, 0, 0, 0);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'Y', 'S', 460, '1963/00386',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, 44347, 18149
, 26198, 44347, '3', NULL, 'B', 'TV201102240000028',  TO_Date( '02/24/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 12675, 20563, 2995, 120, 350, 75, 0, 4893, 0, 956, 4800, 250, 30, 0, 0, 0, 0, 0
, 0, 0, 0);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'Y', 'S', 460, '1963/00386',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, 44347, 20974
, 23373, 44347, '3', NULL, 'B', 'TV201012240000023',  TO_Date( '12/24/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 12675, 20563, 2995, 120, 350, 75, 0, 4893, 0, 956, 3000, 250, 30, 0, 0, 0, 0, 0
, 0, 0, 0);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 462, '1963/01525',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201102120000010'
,  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 17000, 27578, NULL
, NULL, NULL, NULL, NULL, 0, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, 6522);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 462, '1963/01525',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, NULL, NULL, NULL
, NULL, '1',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201103140000011'
,  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 17000, 27578, NULL
, NULL, NULL, NULL, NULL, 0, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, 6522);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 462, '1963/01525',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1',  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201101130000004'
,  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 16450, 26686, NULL
, NULL, NULL, NULL, NULL, 0, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, 6311);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 465, '1963/01519',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201102120000025',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 29963, 32405, NULL, NULL, NULL, NULL, NULL, 8349, 0, NULL, NULL, 5706, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 465, '1963/01519',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201103140000025',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 29963, 32405, NULL, NULL, NULL, NULL, NULL, 7664, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 465, '1963/01519',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1', NULL, '1', 'TV201101130000019',  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
, 29070, 31440, NULL, NULL, NULL, NULL, NULL, 7436, 0, NULL, NULL, 0, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 468, '1963/00776',  TO_Date( '01/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '01/31/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1',  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201102120000043'
,  TO_Date( '02/12/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 9500, 15411, NULL
, NULL, NULL, NULL, NULL, 3645, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 468, '1963/00776',  TO_Date( '02/01/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '02/28/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 28, NULL, NULL, NULL
, NULL, '1',  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201103140000041'
,  TO_Date( '03/14/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 9500, 15411, NULL
, NULL, NULL, NULL, NULL, 3645, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL);
INSERT INTO SAL_TXN ( DISB_STATUS, SAL_TYPE, ECODE, PF_NO, PAY_FROM, PAY_UPTO,
ACTUAL_PAY_DAYS, TOT_EARN, TOT_DEDUCTION, NET_PAY, GROSS_PAY, PAID_STATUS, PAID_DATE, PAY_MODE,
CHQ_NO, CHQ_DATE, BASIC, DA_1, HRA_1, CCA, MEDIC, CONVY, S_ALW, GPF, AGPF, LIC, TDS, S_PAY, W_ALL,
IR1, IR2, CPALL, DPALL, GPF_1, GPF_2, ARGPF, GPF2004 ) VALUES (
'N', 'P', 468, '1963/00776',  TO_Date( '12/01/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
,  TO_Date( '12/31/2010 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 31, NULL, NULL, NULL
, NULL, '1',  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), '1', 'TV201101130000040'
,  TO_Date( '01/13/2011 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM'), 9500, 15411, NULL
, NULL, NULL, NULL, NULL, 3645, 0, NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL);
commit;Following the below-mentioned logic, I need to UPDATE both the TABLES on matching basis
[Logic]
For all the Employees with CODE = '' :
     Matching the MONTH of GPF_TXN Table with the MONTH extracted from PAY_FROM field of SAL_TXN Table
     and AMT of GPF_TXN Table with the GPF of SAL_TXN, Update UPCD field of GPF_TXN with '**' and also
     the PAID_DATE field of SAL_TXN Table with the extracted Date from VID field. For Example : When VID =
     'TV201101140000078', leaving aside the first two characters, concatenate the next four digits standing
     for 'YYYY', next two standing for 'MM' and the last two standing for 'DD' to make Date in 'DD/MM/YYYY' format.
For the Employees with CODE = 'E':
     Matching the MONTH of GPF_TXN Table with the MONTH extracted from PAY_FROM field of SAL_TXN Table
     and AMT field of GPF_TXN Table with the GPF2004 field of SAL_TXN, Update UPCD field of GPF_TXN with '**' and also
     the PAID_DATE field of SAL_TXN Table with the extracted Date from VID field. For Example : When VID =
     'TV201101140000078', leaving aside the first two characters, concatenate the next four digits standing
     for 'YYYY', next two standing for 'MM' and the last two standing for 'DD' to make Date in 'DD/MM/YYYY' format.
Is the above 2 table Updation possible in a single SQL Query or using CASE Analytics.

user3308033 wrote:
If that's the case, How about updating only the GPF_TXN Table with the matching SAL_TXN records?Probably, you are looking something as follows.
UPDATE GPF_TXN A
SET UPCD='**'
WHERE  CASE WHEN A.CODE is NULL AND A.AMT in (select GPF from SAL_TXN B
                                       WHERE A.ECODE=B.ECODE)
             THEN 1
             WHEN A.CODE='E'  AND A.AMT in (select  GPF2004 from SAL_TXN B
                                            WHERE A.ECODE=B.ECODE)
             THEN 1
END=1Not Tested( Since your table creation script and sample data having errors.)

Similar Messages

  • How to update the table available in BADI method

    Hi Friends,
    I have to implement one badi ME_REQ_POSTED for purchase requistion, in this badi  I have to read first line item and do
    some check...if that check is true i need to update subsequent line item (line 20, 30, 40 or so) with purchase group and MRP controller.
    In this BADI i have method POSTED, in this method parameter IM_EBAN is a table which i need to modify with my different
    values for purchase group and MRP controller.
    Kindly let me know how to update this table, so the changes can be reflected in purchase requistion.
    Since when I tried to directly modify the table in a loop, system throw one error stating IM_EBAN can not be modified.
    kindly help.
    pradeep

    hi
    I have implemented this exit but it does not stop at it while saving Purchase requistion. But my previous BADI stops at it when saving.
    Kindly guide.

  • How to update the table value in the valuechange event?

    I have an input field in the datatable with the valueChangeListener
    <rich:dataTable id="cart" value="#{cart.cartList}" var="item">
    <h:inputText value="#{item.cost}" id="qty" valueChangeListener="#{items.updateCost}" onchange="submit()">
    <h:outputText value="#{item.errorMsg}"> </h:outputText>
    in the backing bean
         Item item = (Item) model.getRowData();
    // do some update, if the cost too larger, change to max_cost
         item.setCost(max_cost);
         item.setErrorMsg("Error Msg");
    After calling the valuechange method, the screen output doesn't update the cost.
    How to update the table value in the valuechange event?

    As you're misusing the valueChangeListener to set another input field, you need to skip the update model values phase. Otherwise the value set in the valueChangeListener will be overridden by the submitted value. You can do this by calling the FacesContext#renderResponse() inside the valueChangeListener method. This will shift the current phase immediately to the render response phase, hereby skipping the update model values and invoke application phases.

  • How to update a table (CUSTOMER) on a Report Server with the data from the same table (CUSTOMER) from another server Transaction server?

    I had an interview question that is:
    How to update a table (Customer) on a server ex: Report Server with the data from the same table (Customer) From another server ex: Transaction server?
    Set up steps so inset, update or delete operation takes place across the servers.
    It would be great if someone please enlighten me in details about this process in MS SQL Server 2008 R2.
    Also please describe would it be different for SQL Server 2012?
    If so, then what are the steps?

    I had an interview question that is:
    How to update a table (Customer) on a server ex: Report Server with the data from the same table (Customer) from another server ex: Transaction server?
    Set up steps so that inset, update or delete operation gets done correctly across servers.
    I was not sure about the answer, it would be great if someone please put some light on this and explain in details about this process in MS SQL Server 2008 R2.
    Also it would be very helpful if you please describe would it be different for SQL Server 2012? If so, then what are the steps?

  • How to update Spry-table and present the updated table in a div element?

    Hello!
    I am using a very interesting AJAX-framework called Spry when designing a web page. Here the web page is: Link.
    I need some help.
    Every time a new project or shift is added, the changes are written to an xml-file. When the page is reloaded, Spry reads data from xml-files.
    This is caused by this code:
    dsProjects = new Spry.Data.XMLDataSet("timetable/projects.xml", "projects/project");
    dsShifts = new Spry.Data.XMLDataSet("timetable/{dsProjects::url}", "project/shift"); //look inside projects.xml and //extrac xml-file. url
    dsName = new Spry.Data.XMLDataSet("timetable/{dsProjects::url}", "project");
    I call this function that I have written: loadProjectsIntoDivElement ().
    This function does the following: [See attached code.]
    It iterates through the Spry-datastructure and puts the data in a table inside of the div-element called 'projectsList'.
    Now, when I add a new project, I want it to be inserted into the Spry-datastructure and then cause the new data to be written into the div element called 'Specials_DIV'.
    I have found out how to update a Spry-datastructure (e.g. dsProjects above), but I don't know how to update the table containing the data without refreshing the page. This should be done using Spry.
    Some code:
    1:
    2:
    3:
    function loadProjectsIntoDivElement () {
    $('#projectsList').html('');
    $('#projectsList').append('<table id="Specials_Table"><tr><th spry:sort="id">ID</th><th spry:sort="NAME">Name </th><th spry:sort="hoursestimated">Nr. of hours estimated</th><th spry:sort="hoursworked">Nr. of hours worked</th><th spry:sort="costperhour">Cost per hour.</th></tr>{function::init_hours}<tr spry:repeat="dsProjects" onclick="chooseProject({ds_RowID})"><td>{id}</td><td>{NAME}</td><td>{hoursestimated}</td><td>{hoursworked}</td><td>{costperhour}</td></tr></table><br/>{function::get_hours}<br/>');
    I have tried to accomplish this in various ways but I don't succeed.
    I want to do it without refreshing the page.
    Update: I found some code here that I will try: Link
    Thanks in advance!
    Anders Branderud
    My blog

    Hello!
    Thanks!
    I don't succeed with the implementation in any browser.
    I have found a way to it, but I would like a way that updates the data quicker and without reloading all of the page. After all, I am only adding one row on the end of the data structure, so there should be no need to read in all data again.
    Now I do it like this:
    When a project is added, do this:
    1. Store a new row in the project file through a php script.
    2. When the post-call to the php-file returns, do refresh of the whole page.
    Then the newest version of the xml file will be read in.
    However, I don't want to read the data from a xml file each time that a new project is created.
    I know how to add the new data to a Spry-datastructure [in my code 'dsProjects'], but I don't know how to display the updated data without reloading the whole page.
    I have tried some various ways to do it, but haven't succeded.
    Thanks!
    Anders Branderud

  • How to update a table containing BLOB?

    Hi,
    I'm trying to update two columns in a table.
    one is NUMBER and the other is BLOB
    Is there a way to do so in OCCI in a single operation ?
    the table looks like this:
    CREATE TABLE ACCUMULATORS
    (TARGET_SUBS NUMBER(9),
    ITERATOR NUMBER(9),
    NUMERATOR NUMBER(9),
    LARGE_DATA BLOB,
    PRIMARY KEY(TARGET_SUBS,ITERATOR));
    and the query is something like:
    UPDATE ACCUMULATORS SET NUMERATOR = :x1 , LARGE_DATA = :x2 WHERE (TARGET_SUBS = :x3) AND (ITERATOR = :x4);
    Thanks,
    Menachem

    I had an interview question that is:
    How to update a table (Customer) on a server ex: Report Server with the data from the same table (Customer) from another server ex: Transaction server?
    Set up steps so that inset, update or delete operation gets done correctly across servers.
    I was not sure about the answer, it would be great if someone please put some light on this and explain in details about this process in MS SQL Server 2008 R2.
    Also it would be very helpful if you please describe would it be different for SQL Server 2012? If so, then what are the steps?

  • How to update database table !!!

    hi all,
    Please advice how to update database table with certain cndition needs to be checked.
    Please consider below scenario.
    have used enqueu and dequeue function to lock entries  and also i have used BAPI so considering that return parameter . i want to update table
    /tdk/st0027.
    1. I want to update database table
    2. there are certain condition needs to be checked like ,
       loop at it_final into wa_final.
    th_return-type = 'S'.
               if th_final-vbeln = /tdk/st0027-vbeln and
                  th_final-posnr = /tdk/st0027-posnr and
                  th_final-etenr = /tdk/st0027-sdslno.
    above condition which i need to check .and need to append below system fields need to be appended in table.
              th_final-prstsind = '20'.
              th_final-chgdate  = g_date.
              th_final-chgtime  = g_uzeit.
              th_final-chgprog  = g_cprog.
              th_final-chguser  = g_uname.
              append th_final to td_final.
              update /tdk/st0027 FROM th_final.
              endif.
    endloop.
    but i am getting error saying that  "The type od database table and work area (TH_FINAL)  are not unicode convertible"?
    I am not able to understandwhat would be the solution for this ?
    Thanks and regards,
    Prasad K. NAralkar

    The error occurs in the UPDATE statement included in the code. In this statement it is seen that there is a mismatch of structure defined for the DDIC table /tdk/st0027 and that of your work area th_final.
    try to create a structure w.r.t the DDIC table.
    Eg: DATA: wa_temp TYPE /tdk/st0027.
    MOVE-CORRESPONDING th_final TO wa_temp.
    Then try to UPDATE using the temporary work area i.e wa_temp which has structure similar to that of the database table.

  • How to update two tables with trigger

    Hi:
    how to update two tables with trigger ?
    I have two tables :
    (1)ASIA
    MI number;
    (2)ASIA_P
    ID number;
    When I insert a new value into the asia.MI ,I also can
    insert the same value into the asia_p.id field.
    I have write a trigger as follows but it does't work.
    create or replace trigger MI_TRG
    before insert on asia
    for each row
    declare
    seq number;
    begin
    select MI_SEQ.Nextval into seq from dual;
    :new.MI:=seq;
    insert into ASIA_PRO(MI_ID)
    values
    (seq);
    end MI_TRG;
    How to realize it ?
    thanks
    zzm

    Why do you say it does not work?

  • How to update the table when change list item in classic report

    hi ,
    i worked with apex 4.2 and i create normal classic report with one select list(named loved)Column ,now i want to update table when user change the list with new value ,i can't create dynamic action to do this,i create check box with primary key and loop for check item to update the table but i can't get the value of list item. and for more speed the user want to do this when change the list value.
    my question
    1- how to do this by javascript and get the value from list item and update the table with new value
    2- is i must use API to create list item so i can get the value of item in report or what.
    Thanks
    Ahmed

    I coded the following to give you direction:
    1. In the "Element Attributes" section of the DEPTNO column, I call a javascript function as:
    onchange = "javascript:updateTable(this);"2. I wrote a simple javascript function that shows an alert when the user changes the select list as:
    <script language="JavaScript" type="text/javascript">
    function updateTable(pThis)
        var vRow = pThis.id.substr(pThis.id.indexOf('_')+1);
        alert('Row# - '+ vRow + ' has the value - ' + pThis.value);
    </script>Now, you can call a AJAX on-demand process inside the javascript function to update the database value.

  • How to update the tables either in its entirety or not at all

    We want update more than two tables at one time,for example we code following:
    update A set ***
    update B set ***
    we first update A, but sometimes B can not be updated sucessful,
    How to update A&B tables in its entirety?  Or, if any one of these tables can not be updated sucessful,two talbes don't update at all.
    Thank you very much?

    hi,
    You want to update or not update at all that means either Update or rollback.
    So Put A COMMIT WORK statement after the update starement.
    It will either fully update or Automatically Rollback the whole
    Processing.
    Regards
    Sumit Agarwal

  • How To Update A Table View From Client Side !!!!

    Hi I would like to update a table view from the Client Side. So that the user can keep updating the relevent data on the client and when they have finally finished they can press Save so the entire page is then sent to the Server.
    Does anyone know how to do this, I guess u have to use the EPCM, I have just started on it and would really appreciate some Help.
    Thanks,
    Emmanuel.

    This is what I found :-
    There are a couple of ways to approach this.
    1) load the excel spreadsheet into the database "as is". You can use interMedia
    text to convert the .xls file into a .htm file (HTML) or use iFS (see
    http://technet.oracle.com/
    for
    more info on that) to parse it as well. InterMedia text will convert your XLS
    spreadsheet into a big HTML table (easy to parse out what you need at that
    point)
    2) Using OLE automation, a program you write can interact with Excel, request
    data from a spreadsheet, and insert it. Oracle Forms is capable of doing this
    for example as is other languages environments. In this fashion, you can remove
    the "manual" and "sqlldr" parts -- your program can automatically insert the
    data.
    3) You can write a VB script that uses ODBC or Oracle Objects for OLE (OO4O) in
    Excel. This VB script would be able to put selected data from the spreadsheet
    into the database. We would recommend OO4O. It provides an In-Process COM
    Automation Server that provides a set of COM Automation interfaces/objects for
    connecting to Oracle database servers, executing queries and managing the
    results. OO4O is available from
    http://technet.oracle.com

  • How to Update  crmd_customer_h TABLE Using CRMV_EVENT Through Funtion Module

    Hi
    How we can update customer_h table using the CRMV_EVENT Where i implemented logic below in the Funtion Module.
    data:     lt_doc_flow          TYPE crmt_doc_flow_wrkt,
              lw_cust_h_com        TYPE crmt_customer_h_com,
              lw_input_field_names TYPE crmt_input_field_names,
              lt_input_field_names TYPE crmt_input_field_names_tab,
              lt_objects_to_save TYPE crmt_object_guid_tab,
              lw_guid TYPE CRMT_OBJECT_GUID.
    DATA : lv_process_type TYPE crmt_process_type.
    data: wa_doc_flow type CRMT_DOC_FLOW_WRK.
    data: wa_customer_h type crmd_customer_h.
    *  Function module for retriving the Process type.
      CALL FUNCTION 'CRM_ORDERADM_H_READ_OW'
        EXPORTING
          iv_orderadm_h_guid     = iv_header_guid
        IMPORTING
          ev_process_type        = lv_process_type
        EXCEPTIONS
          admin_header_not_found = 1
          OTHERS                 = 2.
    if lv_process_type eq 'ZG01'.
    CALL FUNCTION 'CRM_DOC_FLOW_READ_OB'
    EXPORTING
       IV_HEADER_GUID                 = iv_header_guid
    IMPORTING
       ET_DOC_FLOW_WRK                = lt_doc_flow.
    read table lt_doc_flow with key objtype_a = 'BUS2000116' INTO wa_doc_flow. "gc_object_type-service.
                if sy-subrc eq 0.                    "set flag for service order
                lw_cust_h_com-ref_guid       =  wa_doc_flow-objkey_a.
                lw_cust_h_com-ZZTRAIL_FLAG   = 'X'.
                 lw_cust_h_com-mode           = 'A'.
                lw_cust_h_com-ref_handle     = '0000000001'.
                lw_guid = wa_doc_flow-objkey_a.
                INSERT lw_guid INTO TABLE lt_objects_to_save.
         endif.
                  lw_input_field_names-fieldname = 'REF_GUID'.
                lw_input_field_names-fieldname = 'ZZTRAIL_FLAG'.
              lw_input_field_names-changeable = ' '.
               INSERT lw_input_field_names INTO TABLE lt_input_field_names.
    Maintain Customer H
             CALL FUNCTION 'CRM_CUSTOMER_H_MAINTAIN_OW'
                  EXPORTING
                    is_customer_h_com    = lw_cust_h_com
                  CHANGING
                    ct_input_field_names = lt_input_field_names
                  EXCEPTIONS
                    header_change_error  = 1
                    header_create_error  = 2
                   error_occurred       = 3.
    ENDIF.
    *endif.
    *Clearing local variables
      clear: lv_process_type,
             lw_cust_h_com,
             lw_input_field_names.
    *Free internal tables
      free: lt_doc_flow,
            lt_input_field_names.

    Hi Faisal
    I think your not clear with what i am saying anyhow i will again explain you my requirement
    As per my requirement
    1)in the service order search report i need to add a field called "Has trail order with No Follow up" with values "Yes" & "Blank"
    For above Field i added  using the structure CRMST_QUERY_SRVO_BTIL and through configuration i am able to display the field in webui as per (Attachement Pic 1)
    2)When i  search with search criteria as  "Has trail order with No Follow up" with  "Yes"
    Then in result list i need to show the service order those having follow up as trail orders(sales order) only.if for  next document trail order  having any follow up then those service orders dont want to show in result list.
    For above requirement i implemented F.M using CRMV_EVENT & I configured for BUS2000115 And BEFORE_SAVE The Order
    The FM Will get trigger when i save the service order and for that service order if create any follow up and try to save the trail order then This FM Will trigger and in this i am doing validations.
    3)Add one AET Trail Flag field is added under CUSTOMER_H Table.
    4)in the FM I am validating for if the trail order having the preceding document as service order then i need to make flag as "X" For that service order in customer_h
    if suppose when i delete trail order from the service order then that flag must need to be "unset" from the CUSTOMER_H.
    Why bcoz we are doing above process is do show records in result list based on Flag values
    these flag checks are validating in the BADI Which we implemented for search logic.
    Please refer below Login for my requirement:-
    Proposal to have a custom “flag” field (background at table level,
         crmd_customer_h) linked to service order which gets flagged whenever at
         least one Trial order is created and saved from the Service Order.
    The flag value should be cleared when all the trial orders created and
    saved as follow up transactions are deleted from the system.
    Similarly for Trial Orders will use the same custom “flag” field
         which gets activated when at least one follow up is created and saved from Trial Order.
    The flag value should be cleared when all the follow up transactions from
    the Trial Order are deleted from the system.
    When the above search criteria “Has Trial order with no follow up”
         “is” “Yes” is applied then the logic derives all the service
         orders which satisfy additional search criteria applied in the search and
         for these Service orders checks if the custom flag field is checked to
         derive all Service orders which have Trial order. The custom flag values
         values are derived from crmd_customer_h table in CRM.
    4 )Further for all the Trial Orders determined in Step 3
    check if the Trial Order has a follow up by checking if the custom flag field
    is checked. The custom flag values are derived from crmd_customer_h table in
    CRM.
    5) If step 4 is not met populate the preceding Service
    Orders in the Result list

  • How to update S Tables (like S812) ?

    Hi
    I need to update some FI tables like S812 in a Z program.
    I see some Z programs wich update directly the S812 table but it supose it's not correct because these tables are like stantard SAP tables wich can only be updated by standard SAP functions.
    In a Z program i need to create some records in these S812 table, does somebody knows how can i update this table ? Is there some FM wich i can use in order to do not update this table directly in Z program ?
    Thanks
    Frank

    Hi ,
    i'm not sure of FI , but i know them in modules like SD , its called Evaluation Structures, u can also see them under path ->Logistics->SD-->Sales Info Systems->Flexi analyses, can ask ur SD guys to give u more details on it.
    regards
    Prabhu

  • How to update a table with huge data

    Hi,
    I have a scenario where I need to update tables that are having huge data (each table is having more than 10,00000)
    I am writing this update in PLSQL block.
    Is there any way to improve the performance of this update statement? Please suggest...
    Thanks.

    user10403630 wrote:
    I am storing all tables and columns that needs to be updated in tab_list and forming a dynamic qry.
    for i in (select * from tab_list)
    loop
    v_qry := 'update '||i.table_name||' set '|| i.column_name ' = '''||new_value||'''' ||' where '||i.column_name = ''||old_value||'''';
    execute immediate v_qry;
    end loop;Sorry to say so but this code is aweful!
    Well the only thing to make this even more slow would be to add a commit inside the loop.
    Some advices. But I'm not sure which one works in your case.
    The fastest way to update a million rows is: write a single update statement. On typical systems this should only run for like a couple of minutes.
    if you need to update several tables then write a single update for each table.
    If you have different values that need to be updated then find a way how to consider those different values in a single update or merge statement. Either by joining another table or by using some in-lists.
    e.g.
    update myTable
    set mycolumn = decode(mycolumn
                                     ,'oldValue1','newvalue1'
                                     ,'oldValue2','newvalue2'
                                     ,'oldValue3','newvalue3')
    where mycolumn in ('oldValue1','oldvalue2','oldvalue3'....);If you need to do this in pl/sql then
    1) use bind variables to avoid hard parsing the same statement again and again
    2) use bulk binding to avoid pl/sql context switches

  • How to update Nested tables with xsu

    Hello,
    I have three tables.
    1) DEPARTMENT_TAB
    2) EMPLOYEE_TYP
    3) ADDRESS_TYP
    ADDRESS_TYP is a collection and it is nested inside EMPLOYEE_TYP.
    EMPLOYEE_TYP is a collection and it is nested inside DEPARTMENT_TAB.
    created with below scropt
    CREATE TYPE ADDRESS_TYP AS OBJECT (CITY VARCHAR2(10), STATE VARCHAR2(2));
    CREATE TYPE ADDRESS_TYP_NT AS TABLE OF ADDRESS_TYP;
    CREATE TYPE EMPLOYEE_TYP AS OBJECT (EMPNO NUMBER(4), ENAME VARCHAR2(10), ADDRESS_VAR ADDRESS_TYP_NT);
    CREATE TYPE EMPLOYEE_TYP_NT AS TABLE OF EMPLOYEE_TYP;
    CREATE TABLE DEPARTMENT_TAB (DEPTNO NUMBER(4), DNAME VARCHAR2(10), EMPLOYEE_VAR EMPLOYEE_TYP_NT)
         NESTED TABLE EMPLOYEE_VAR STORE AS EMPLOYEE_TAB
         ( NESTED TABLE ADDRESS_VAR STORE AS ADDRESS_TAB);
    I inserted two rows in DEPARTMENT_TAB and their nested tables using normalsql. and i generated below xml content using XSU java API
    oracle.xml.sql.query.OracleXMLQuery
    My Question is How to UPDATE a row in ADDRESS_TAB using XSU java API
    oracle.xml.sql.dml.OracleXMLSave.
    (When i was trying to update address_tab nested table's row with xml input file. it is deleting other existing rows)
    Thanks.

    Why do you say it does not work?

Maybe you are looking for

  • Open picture files and display in fullscreen slideshow?

    I'm hoping for some help as I'm very new to LabView and quite lost.... I have a directory with many picture files (too many to put them all in a powerpoint slideshow) and i want to open them one by one and display them full screen with no border arou

  • CS2 asking for serial number

    I've been running InDesign CS2 on my Mac no problem for years. Today, I have turned my machine on, gone to open a CS2 document and I get this message asking for the serial number to continue installation. When I put my serial number in, it tells me i

  • Calculating a Leap Year with a FOX Formula

    Hi to everybody. Is it posible to calculate a leap year using BPS in BW 3.5 with a FOX formula? The code i need to write is something like this: if ((year % 4 == 0) AND ((year % 100 != 0) OR (year % 400 == 0)) then   it is a leap year; else   it isn´

  • Two fields about material in AFKO: PLNBEZ and STLBEZ,what's the difference?

    Two fields about material in AFKO: PLNBEZ and STLBEZ,what's the difference? correct answers will be rewarded. thanks in advance

  • Sun ONE Directory Server 5.1 SP1 crash

    A bug not present in the 5.1 without SP, only in SP1. Scenario: - Solaris 8 or Solaris 9. - Sun ONE Directory Server 5.1 SP1. - Changelog enabled with maximun age of 1 day. - Retro Changelog Plugin active (needed for the metadirectory access of cn=ch