352: -- The initialization of the record type formulae
353: -- and number of parameters
354: BEGIN
355: /* Reserved parameter names */
356: pay_mag_tape.internal_prm_names(1) := 'NO_OF_PARAMETERS';
357: pay_mag_tape.internal_prm_names(2) := 'NEW_FORMULA_ID';
358: pay_mag_tape.internal_prm_names(3) := 'TRANSFER_TYPE1_ERRORS';
359: pay_mag_tape.internal_prm_names(4) := 'TRANSFER_TYPE2_ERRORS';
360: IF p_no = 1 THEN
353: -- and number of parameters
354: BEGIN
355: /* Reserved parameter names */
356: pay_mag_tape.internal_prm_names(1) := 'NO_OF_PARAMETERS';
357: pay_mag_tape.internal_prm_names(2) := 'NEW_FORMULA_ID';
358: pay_mag_tape.internal_prm_names(3) := 'TRANSFER_TYPE1_ERRORS';
359: pay_mag_tape.internal_prm_names(4) := 'TRANSFER_TYPE2_ERRORS';
360: IF p_no = 1 THEN
361: /* Record type 1 */
354: BEGIN
355: /* Reserved parameter names */
356: pay_mag_tape.internal_prm_names(1) := 'NO_OF_PARAMETERS';
357: pay_mag_tape.internal_prm_names(2) := 'NEW_FORMULA_ID';
358: pay_mag_tape.internal_prm_names(3) := 'TRANSFER_TYPE1_ERRORS';
359: pay_mag_tape.internal_prm_names(4) := 'TRANSFER_TYPE2_ERRORS';
360: IF p_no = 1 THEN
361: /* Record type 1 */
362: pay_mag_tape.internal_prm_values(1) := 13;
355: /* Reserved parameter names */
356: pay_mag_tape.internal_prm_names(1) := 'NO_OF_PARAMETERS';
357: pay_mag_tape.internal_prm_names(2) := 'NEW_FORMULA_ID';
358: pay_mag_tape.internal_prm_names(3) := 'TRANSFER_TYPE1_ERRORS';
359: pay_mag_tape.internal_prm_names(4) := 'TRANSFER_TYPE2_ERRORS';
360: IF p_no = 1 THEN
361: /* Record type 1 */
362: pay_mag_tape.internal_prm_values(1) := 13;
363: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD1');
358: pay_mag_tape.internal_prm_names(3) := 'TRANSFER_TYPE1_ERRORS';
359: pay_mag_tape.internal_prm_names(4) := 'TRANSFER_TYPE2_ERRORS';
360: IF p_no = 1 THEN
361: /* Record type 1 */
362: pay_mag_tape.internal_prm_values(1) := 13;
363: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD1');
364: ELSIF p_no = 2 THEN
365: /* Record type 2 */
366: pay_mag_tape.internal_prm_values(1) := 63;
359: pay_mag_tape.internal_prm_names(4) := 'TRANSFER_TYPE2_ERRORS';
360: IF p_no = 1 THEN
361: /* Record type 1 */
362: pay_mag_tape.internal_prm_values(1) := 13;
363: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD1');
364: ELSIF p_no = 2 THEN
365: /* Record type 2 */
366: pay_mag_tape.internal_prm_values(1) := 63;
367: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD2');
362: pay_mag_tape.internal_prm_values(1) := 13;
363: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD1');
364: ELSIF p_no = 2 THEN
365: /* Record type 2 */
366: pay_mag_tape.internal_prm_values(1) := 63;
367: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD2');
368: /* Reset the record index to start at the third parameter */
369: ELSIF p_no = 3 THEN
370: /* Sub-header */
363: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD1');
364: ELSIF p_no = 2 THEN
365: /* Record type 2 */
366: pay_mag_tape.internal_prm_values(1) := 63;
367: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD2');
368: /* Reset the record index to start at the third parameter */
369: ELSIF p_no = 3 THEN
370: /* Sub-header */
371: -- hr_utility.trace('record index is '||to_char(g_record_index));
368: /* Reset the record index to start at the third parameter */
369: ELSIF p_no = 3 THEN
370: /* Sub-header */
371: -- hr_utility.trace('record index is '||to_char(g_record_index));
372: pay_mag_tape.internal_prm_values(1) := 6;
373: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD3');
374: ELSIF p_no = 4 THEN
375: /* Permit total */
376: -- hr_utility.trace('record index is '||to_char(g_record_index));
369: ELSIF p_no = 3 THEN
370: /* Sub-header */
371: -- hr_utility.trace('record index is '||to_char(g_record_index));
372: pay_mag_tape.internal_prm_values(1) := 6;
373: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD3');
374: ELSIF p_no = 4 THEN
375: /* Permit total */
376: -- hr_utility.trace('record index is '||to_char(g_record_index));
377: pay_mag_tape.internal_prm_values(1) := 15;
373: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD3');
374: ELSIF p_no = 4 THEN
375: /* Permit total */
376: -- hr_utility.trace('record index is '||to_char(g_record_index));
377: pay_mag_tape.internal_prm_values(1) := 15;
378: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD4');
379: ELSIF p_no = 5 THEN
380: /* End of record */
381: -- hr_utility.trace('record index is '||to_char(g_record_index));
374: ELSIF p_no = 4 THEN
375: /* Permit total */
376: -- hr_utility.trace('record index is '||to_char(g_record_index));
377: pay_mag_tape.internal_prm_values(1) := 15;
378: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD4');
379: ELSIF p_no = 5 THEN
380: /* End of record */
381: -- hr_utility.trace('record index is '||to_char(g_record_index));
382: pay_mag_tape.internal_prm_values(1) := 7;
378: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD4');
379: ELSIF p_no = 5 THEN
380: /* End of record */
381: -- hr_utility.trace('record index is '||to_char(g_record_index));
382: pay_mag_tape.internal_prm_values(1) := 7;
383: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD5');
384: ELSIF p_no = 6 THEN
385: /* Dummy record */
386: pay_mag_tape.internal_prm_values(1) := 2;
379: ELSIF p_no = 5 THEN
380: /* End of record */
381: -- hr_utility.trace('record index is '||to_char(g_record_index));
382: pay_mag_tape.internal_prm_values(1) := 7;
383: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD5');
384: ELSIF p_no = 6 THEN
385: /* Dummy record */
386: pay_mag_tape.internal_prm_values(1) := 2;
387: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD6');
382: pay_mag_tape.internal_prm_values(1) := 7;
383: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD5');
384: ELSIF p_no = 6 THEN
385: /* Dummy record */
386: pay_mag_tape.internal_prm_values(1) := 2;
387: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD6');
388: END IF;
389: -- Set parameter count to start at transfer_type1_errors
390: g_record_index := 5;
383: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD5');
384: ELSIF p_no = 6 THEN
385: /* Dummy record */
386: pay_mag_tape.internal_prm_values(1) := 2;
387: pay_mag_tape.internal_prm_values(2) := get_formula_id('MAG_RECORD6');
388: END IF;
389: -- Set parameter count to start at transfer_type1_errors
390: g_record_index := 5;
391: END;
393: PROCEDURE mag_tape_interface(p_name VARCHAR2
394: ,p_values VARCHAR2) IS
395: /* The interface to the magnetic tape writer process */
396: BEGIN
397: pay_mag_tape.internal_prm_names(g_record_index) := p_name;
398: pay_mag_tape.internal_prm_values(g_record_index) := p_values;
399: /* Inc the parameter table index */
400: g_record_index := g_record_index +1;
401: END;
394: ,p_values VARCHAR2) IS
395: /* The interface to the magnetic tape writer process */
396: BEGIN
397: pay_mag_tape.internal_prm_names(g_record_index) := p_name;
398: pay_mag_tape.internal_prm_values(g_record_index) := p_values;
399: /* Inc the parameter table index */
400: g_record_index := g_record_index +1;
401: END;
402: --
403: PROCEDURE mag_tape_interface(p_name VARCHAR2
404: ,p_values NUMBER) IS
405: /* The interface to the magnetic tape writer process */
406: BEGIN
407: pay_mag_tape.internal_prm_names(g_record_index) := p_name;
408: pay_mag_tape.internal_prm_values(g_record_index) := p_values;
409: g_record_index := g_record_index +1;
410: END;
411: --
404: ,p_values NUMBER) IS
405: /* The interface to the magnetic tape writer process */
406: BEGIN
407: pay_mag_tape.internal_prm_names(g_record_index) := p_name;
408: pay_mag_tape.internal_prm_values(g_record_index) := p_values;
409: g_record_index := g_record_index +1;
410: END;
411: --
412: PROCEDURE p_mag_form_clear IS
703: ,p_business_group_id IN OUT VARCHAR2) IS
704: BEGIN
705: -- Get the parameters passed to the module
706: -- Permit number first
707: IF pay_mag_tape.internal_prm_names(3) = 'PERMIT' THEN
708: hr_utility.set_location('eoy_body.eoy',400);
709: -- Trap if the permit number was left null in parameters
710: BEGIN
711: p_permit_no := pay_mag_tape.internal_prm_values(3);
707: IF pay_mag_tape.internal_prm_names(3) = 'PERMIT' THEN
708: hr_utility.set_location('eoy_body.eoy',400);
709: -- Trap if the permit number was left null in parameters
710: BEGIN
711: p_permit_no := pay_mag_tape.internal_prm_values(3);
712: EXCEPTION
713: WHEN no_data_found THEN
714: hr_utility.set_location('eoy_body.eoy',410);
715: hr_utility.trace('No permit found');
717: END;
718: hr_utility.set_location('eoy_body.eoy',420);
719: END IF;
720: -- EOY MODE parameter
721: IF pay_mag_tape.internal_prm_names(4) = 'EOY_MODE' THEN
722: -- Trap if the eoy_mode was left null in parameters
723: hr_utility.set_location('eoy_body.eoy',430);
724: BEGIN
725: p_eoy_mode := UPPER(pay_mag_tape.internal_prm_values(4));
721: IF pay_mag_tape.internal_prm_names(4) = 'EOY_MODE' THEN
722: -- Trap if the eoy_mode was left null in parameters
723: hr_utility.set_location('eoy_body.eoy',430);
724: BEGIN
725: p_eoy_mode := UPPER(pay_mag_tape.internal_prm_values(4));
726: EXCEPTION
727: WHEN no_data_found THEN
728: -- Parameter left null so only P35 required
729: hr_utility.set_location('eoy_body.eoy',440);
733: hr_utility.set_location('eoy_body.eoy',450);
734: hr_utility.trace('EOY mode is '||p_eoy_mode);
735: END IF;
736: -- The tax district reference
737: IF pay_mag_tape.internal_prm_names(5) = 'TAX_DISTRICT_REFERENCE' THEN
738: -- Trap if the tax_dist_ref was left null in parameters
739: hr_utility.set_location('eoy_body.eoy',460);
740: BEGIN
741: p_tax_dist_ref := SUBSTR(pay_mag_tape.internal_prm_values(5),1,3);
737: IF pay_mag_tape.internal_prm_names(5) = 'TAX_DISTRICT_REFERENCE' THEN
738: -- Trap if the tax_dist_ref was left null in parameters
739: hr_utility.set_location('eoy_body.eoy',460);
740: BEGIN
741: p_tax_dist_ref := SUBSTR(pay_mag_tape.internal_prm_values(5),1,3);
742: p_tax_ref_no := LTRIM(
743: SUBSTR(pay_mag_tape.internal_prm_values(5),4)
744: , '/');
745: EXCEPTION
739: hr_utility.set_location('eoy_body.eoy',460);
740: BEGIN
741: p_tax_dist_ref := SUBSTR(pay_mag_tape.internal_prm_values(5),1,3);
742: p_tax_ref_no := LTRIM(
743: SUBSTR(pay_mag_tape.internal_prm_values(5),4)
744: , '/');
745: EXCEPTION
746: WHEN no_data_found THEN
747: -- Parameter left null
750: p_tax_dist_ref := NULL;
751: END;
752: END IF;
753: -- The Business_group_id
754: IF pay_mag_tape.internal_prm_names(6) = 'BUSINESS_GROUP_ID' THEN
755: -- Trap if the tax_dist_ref was left null in parameters
756: hr_utility.set_location('eoy_body.eoy',480);
757: BEGIN
758: p_business_group_id := pay_mag_tape.internal_prm_values(6);
754: IF pay_mag_tape.internal_prm_names(6) = 'BUSINESS_GROUP_ID' THEN
755: -- Trap if the tax_dist_ref was left null in parameters
756: hr_utility.set_location('eoy_body.eoy',480);
757: BEGIN
758: p_business_group_id := pay_mag_tape.internal_prm_values(6);
759: EXCEPTION
760: WHEN no_data_found THEN
761: -- Parameter left null
762: hr_utility.set_location('eoy_body.eoy',490);
831: hr_utility.trace('The passed in dist is '||g_tax_dist_ref||'@');
832: hr_utility.trace('The passed in ref is '||g_tax_ref_no||'@');
833: hr_utility.trace('The passed in business is '||g_business_group_id||'@');
834: -- First time in so clear the error type counts
835: pay_mag_tape.internal_prm_values(3) := 0;
836: pay_mag_tape.internal_prm_values(4) := 0;
837: OPEN header_cur(g_permit_no
838: ,g_tax_dist_ref
839: ,g_tax_ref_no
832: hr_utility.trace('The passed in ref is '||g_tax_ref_no||'@');
833: hr_utility.trace('The passed in business is '||g_business_group_id||'@');
834: -- First time in so clear the error type counts
835: pay_mag_tape.internal_prm_values(3) := 0;
836: pay_mag_tape.internal_prm_values(4) := 0;
837: OPEN header_cur(g_permit_no
838: ,g_tax_dist_ref
839: ,g_tax_ref_no
840: ,g_business_group_id);