DBA Data[Home] [Help]

APPS.ICX_POR_ITEM_UPLOAD dependencies on ICX_POR_FAILED_LINES

Line 2355: vDescKey ICX_POR_FAILED_LINES.DESCRIPTOR_KEY%TYPE;

2351: p_failed_item IN ICX_CAT_ITEMS_GT%ROWTYPE) IS
2352: v_rec tITRowRecord;
2353: i PLS_INTEGER;
2354: xErrLoc PLS_INTEGER;
2355: vDescKey ICX_POR_FAILED_LINES.DESCRIPTOR_KEY%TYPE;
2356: --Bug#3396442
2357: v_section_tag PLS_INTEGER;
2358: CURSOR custom_non_price_desc_cr(p_category_id NUMBER) IS
2359: select rt_descriptor_id, type, key,

Line 2379: --this system_action is only used to insert into icx_por_failed_lines table

2375: v_rec.action := p_failed_item.action;
2376: v_rec.system_action := p_failed_item.system_action;
2377: --bug#3593728
2378: --In some cases if system_action is null then replace it with action
2379: --this system_action is only used to insert into icx_por_failed_lines table
2380: IF ( v_rec.system_action IS NULL ) THEN
2381: xErrLoc := 110;
2382: icx_por_ext_utl.debug(icx_por_ext_utl.MUST_LEVEL,
2383: 'system_action is null in save_failed_item;' ||

Line 2904: insert into icx_por_failed_lines

2900: v_section_tag := root_desc.section_tag-1000;
2901: IF (v_rec.roots(v_section_tag) IS NOT NULL) THEN
2902: xErrLoc := 200;
2903:
2904: insert into icx_por_failed_lines
2905: (job_number, line_number, action,
2906: row_type, descriptor_key, descriptor_value)
2907: values
2908: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 2919: insert into icx_por_failed_lines

2915:
2916: IF (v_rec.category_name IS NOT NULL) THEN
2917: vDescKey := 'CATEGORY_NAME';
2918:
2919: insert into icx_por_failed_lines
2920: (job_number, line_number, action,
2921: row_type, descriptor_key, descriptor_value)
2922: values
2923: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 2938: insert into icx_por_failed_lines

2934:
2935: FOR i IN 1..gErrorCatDescKeys.COUNT loop
2936:
2937: IF (v_rec.locals(i) IS NOT NULL) THEN
2938: insert into icx_por_failed_lines
2939: (job_number, line_number, action,
2940: row_type, descriptor_key, descriptor_value)
2941: values
2942: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 2962: insert into icx_por_failed_lines

2958: -- or the code at the end sets the price code
2959: -- IF (v_rec.unit_price IS NOT NULL) THEN
2960: vDescKey := 'PRICE';
2961:
2962: insert into icx_por_failed_lines
2963: (job_number, line_number, action,
2964: row_type, descriptor_key, descriptor_value)
2965: values
2966: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 2975: insert into icx_por_failed_lines

2971:
2972: -- IF (v_rec.currency IS NOT NULL) THEN
2973: vDescKey := 'CURRENCY';
2974:
2975: insert into icx_por_failed_lines
2976: (job_number, line_number, action,
2977: row_type, descriptor_key, descriptor_value)
2978: values
2979: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 2988: insert into icx_por_failed_lines

2984:
2985: -- IF (v_rec.unit_of_measure IS NOT NULL) THEN
2986: vDescKey := 'UOM';
2987:
2988: insert into icx_por_failed_lines
2989: (job_number, line_number, action,
2990: row_type, descriptor_key, descriptor_value)
2991: values
2992: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3000: insert into icx_por_failed_lines

2996: xErrLoc := 530;
2997: -- IF (v_rec.buyer_name IS NOT NULL) THEN
2998: vDescKey := 'BUYER';
2999:
3000: insert into icx_por_failed_lines
3001: (job_number, line_number, action,
3002: row_type, descriptor_key, descriptor_value)
3003: values
3004: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3013: insert into icx_por_failed_lines

3009:
3010: -- IF (v_rec.price_list_name IS NOT NULL) THEN
3011: vDescKey := 'PRICELIST';
3012:
3013: insert into icx_por_failed_lines
3014: (job_number, line_number, action,
3015: row_type, descriptor_key, descriptor_value)
3016: values
3017: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3027: insert into icx_por_failed_lines

3023: --Bug#2729328
3024: -- IF (v_rec.supplier IS NOT NULL) THEN
3025: vDescKey := 'SUPPLIER';
3026:
3027: insert into icx_por_failed_lines
3028: (job_number, line_number, action,
3029: row_type, descriptor_key, descriptor_value)
3030: values
3031: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3040: insert into icx_por_failed_lines

3036:
3037: -- IF (v_rec.supplier_part_num IS NOT NULL) THEN
3038: vDescKey := 'SUPPLIER_PART_NUM';
3039:
3040: insert into icx_por_failed_lines
3041: (job_number, line_number, action,
3042: row_type, descriptor_key, descriptor_value)
3043: values
3044: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3054: insert into icx_por_failed_lines

3050: --Bug#2709997
3051: -- IF (v_rec.supplier_site_code IS NOT NULL) THEN
3052: vDescKey := 'SUPPLIER_SITE';
3053:
3054: insert into icx_por_failed_lines
3055: (job_number, line_number, action,
3056: row_type, descriptor_key, descriptor_value)
3057: values
3058: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3067: insert into icx_por_failed_lines

3063:
3064: -- IF (v_rec.supplier_part_auxid IS NOT NULL) THEN
3065: vDescKey := 'SUPPLIER_PART_AUXID';
3066:
3067: insert into icx_por_failed_lines
3068: (job_number, line_number, action,
3069: row_type, descriptor_key, descriptor_value)
3070: values
3071: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3079: --description not getting logged into icx_por_failed_lines

3075: xErrLoc := 590;
3076:
3077: --Bug#2729328
3078: --For an item txt file with no supplier_part_num specified,
3079: --description not getting logged into icx_por_failed_lines
3080: IF (v_rec.description IS NOT NULL) THEN
3081: vDescKey := 'DESCRIPTION';
3082:
3083: insert into icx_por_failed_lines

Line 3083: insert into icx_por_failed_lines

3079: --description not getting logged into icx_por_failed_lines
3080: IF (v_rec.description IS NOT NULL) THEN
3081: vDescKey := 'DESCRIPTION';
3082:
3083: insert into icx_por_failed_lines
3084: (job_number, line_number, action,
3085: row_type, descriptor_key, descriptor_value)
3086: values
3087: (gJobNumber, v_rec.line_number, v_rec.system_action,

Line 3110: vDescKey ICX_POR_FAILED_LINES.DESCRIPTOR_KEY%TYPE;

3106: /* Saves a failed price */
3107: PROCEDURE save_failed_price(pJobNumber IN NUMBER,
3108: p_line IN tITPriceRecord) IS
3109: xErrLoc PLS_INTEGER;
3110: vDescKey ICX_POR_FAILED_LINES.DESCRIPTOR_KEY%TYPE;
3111: vRowType VARCHAR2(30) := 'PRICE';
3112: BEGIN
3113: xErrLoc := 100;
3114:

Line 3118: insert into icx_por_failed_lines

3114:
3115: --if (p_line.supplier_name is not null) then
3116: vDescKey := 'SUPPLIER';
3117:
3118: insert into icx_por_failed_lines
3119: (job_number, line_number, action,
3120: row_type, descriptor_key, descriptor_value)
3121: values
3122: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3131: insert into icx_por_failed_lines

3127:
3128: --if (p_line.supplier_part_num is not null) then
3129: vDescKey := 'SUPPLIER_PART_NUM';
3130:
3131: insert into icx_por_failed_lines
3132: (job_number, line_number, action,
3133: row_type, descriptor_key, descriptor_value)
3134: values
3135: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3145: insert into icx_por_failed_lines

3141: --Bug#2611529
3142: --if (p_line.supplier_part_auxid is not null) then
3143: vDescKey := 'SUPPLIER_PART_AUXID';
3144:
3145: insert into icx_por_failed_lines
3146: (job_number, line_number, action,
3147: row_type, descriptor_key, descriptor_value)
3148: values
3149: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3159: insert into icx_por_failed_lines

3155: --Bug#2709997
3156: --if (p_line.supplier_site_code is not null) then
3157: vDescKey := 'SUPPLIER_SITE';
3158:
3159: insert into icx_por_failed_lines
3160: (job_number, line_number, action,
3161: row_type, descriptor_key, descriptor_value)
3162: values
3163: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3175: insert into icx_por_failed_lines

3171: -- or the code at the end sets the price code
3172: --if (p_line.unit_price is not null) then
3173: vDescKey := 'PRICE';
3174:
3175: insert into icx_por_failed_lines
3176: (job_number, line_number, action,
3177: row_type, descriptor_key, descriptor_value)
3178: values
3179: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3188: insert into icx_por_failed_lines

3184:
3185: --if (p_line.currency is not null) then
3186: vDescKey := 'CURRENCY';
3187:
3188: insert into icx_por_failed_lines
3189: (job_number, line_number, action,
3190: row_type, descriptor_key, descriptor_value)
3191: values
3192: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3201: insert into icx_por_failed_lines

3197:
3198: --if (p_line.unit_of_measure is not null) then
3199: vDescKey := 'UOM';
3200:
3201: insert into icx_por_failed_lines
3202: (job_number, line_number, action,
3203: row_type, descriptor_key, descriptor_value)
3204: values
3205: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3214: insert into icx_por_failed_lines

3210:
3211: --if (p_line.buyer_name is not null) then
3212: vDescKey := 'BUYER';
3213:
3214: insert into icx_por_failed_lines
3215: (job_number, line_number, action,
3216: row_type, descriptor_key, descriptor_value)
3217: values
3218: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3227: insert into icx_por_failed_lines

3223:
3224: --if (p_line.price_list_name is not null) then
3225: vDescKey := 'PRICELIST';
3226:
3227: insert into icx_por_failed_lines
3228: (job_number, line_number, action,
3229: row_type, descriptor_key, descriptor_value)
3230: values
3231: (gJobNumber, p_line.line_number, p_line.system_action,

Line 3319: UPDATE icx_por_failed_lines SET action = v_rec.system_action

3315: save_failed_price(gJobNumber, v_rec);
3316: ELSIF (v_rec.error_flag = 'Y') THEN
3317: xErrLoc := 510;
3318:
3319: UPDATE icx_por_failed_lines SET action = v_rec.system_action
3320: WHERE job_number = gJobNumber
3321: AND line_number = v_rec.line_number;
3322: END IF;
3323:

Line 3379: UPDATE icx_por_failed_lines SET action = v_rec.system_action

3375: save_failed_item(gJobNumber, v_rec);
3376: ELSIF (v_rec.error_flag = 'Y') THEN
3377: xErrLoc := 410;
3378:
3379: UPDATE icx_por_failed_lines SET action = v_rec.system_action
3380: WHERE job_number = gJobNumber
3381: AND line_number = v_rec.line_number;
3382: END IF;
3383:

Line 4545: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4541: l_progress VARCHAR2(5) := '100';
4542: BEGIN
4543:
4544: --IF p_amount IS NOT NULL THEN
4545: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4546: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4547: p_line_number, p_action, 'PRICE', 'PRICE', p_amount);
4548: --END IF;
4549:

Line 4553: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4549:
4550: l_progress := '110';
4551:
4552: --IF p_currency IS NOT NULL THEN
4553: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4554: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4555: p_line_number, p_action, 'PRICE', 'CURRENCY', p_currency);
4556: --END IF;
4557:

Line 4559: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4555: p_line_number, p_action, 'PRICE', 'CURRENCY', p_currency);
4556: --END IF;
4557:
4558: --IF p_uom IS NOT NULL THEN
4559: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4560: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4561: p_line_number, p_action, 'PRICE', 'UOM', p_uom);
4562: --END IF;
4563:

Line 4565: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4561: p_line_number, p_action, 'PRICE', 'UOM', p_uom);
4562: --END IF;
4563:
4564: --IF p_buyer_name IS NOT NULL THEN
4565: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4566: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4567: p_line_number, p_action, 'PRICE', 'BUYER', p_buyer_name);
4568: --END IF;
4569:

Line 4571: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4567: p_line_number, p_action, 'PRICE', 'BUYER', p_buyer_name);
4568: --END IF;
4569:
4570: --IF p_supplier_name IS NOT NULL THEN
4571: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4572: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4573: p_line_number, p_action, 'PRICE', 'SUPPLIER', p_supplier_name);
4574: --END IF;
4575:

Line 4577: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4573: p_line_number, p_action, 'PRICE', 'SUPPLIER', p_supplier_name);
4574: --END IF;
4575:
4576: --IF p_supplier_part_num IS NOT NULL THEN
4577: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4578: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4579: p_line_number, p_action, 'PRICE', 'SUPPLIER_PART_NUM', p_supplier_part_num);
4580: --END IF;
4581:

Line 4584: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4580: --END IF;
4581:
4582: --Bug#2611529
4583: --IF p_supplier_part_auxid IS NOT NULL THEN
4584: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4585: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4586: p_line_number, p_action, 'PRICE', 'SUPPLIER_PART_AUXID', p_supplier_part_auxid);
4587: --END IF;
4588:

Line 4591: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4587: --END IF;
4588:
4589: --Bug#2709997
4590: --IF p_supplier_site_code IS NOT NULL THEN
4591: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4592: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4593: p_line_number, p_action, 'PRICE', 'SUPPLIER_SITE', p_supplier_site_code);
4594: --END IF;
4595:

Line 4597: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4593: p_line_number, p_action, 'PRICE', 'SUPPLIER_SITE', p_supplier_site_code);
4594: --END IF;
4595:
4596: --IF p_price_list_name IS NOT NULL THEN
4597: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4598: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4599: p_line_number, p_action, 'PRICE', 'PRICELIST', p_price_list_name);
4600: --END IF;
4601:

Line 4604: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4600: --END IF;
4601:
4602: /* Bug#2729328
4603: IF p_price_code IS NOT NULL THEN
4604: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4605: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4606: p_line_number, p_action, 'PRICE', 'PRICE', p_price_code);
4607: END IF;
4608:

Line 4610: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4606: p_line_number, p_action, 'PRICE', 'PRICE', p_price_code);
4607: END IF;
4608:
4609: IF p_supplier_comments IS NOT NULL THEN
4610: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4611: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4612: p_line_number, p_action, 'PRICE', 'SUPPLIERCOMMENTS', p_price_list_name);
4613: END IF;
4614:

Line 4616: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4612: p_line_number, p_action, 'PRICE', 'SUPPLIERCOMMENTS', p_price_list_name);
4613: END IF;
4614:
4615: IF p_begin_date IS NOT NULL THEN
4616: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4617: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4618: p_line_number, p_action, 'PRICE', 'BEGINDATE', p_begin_date);
4619: END IF;
4620:

Line 4622: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4618: p_line_number, p_action, 'PRICE', 'BEGINDATE', p_begin_date);
4619: END IF;
4620:
4621: IF p_end_date IS NOT NULL THEN
4622: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4623: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4624: p_line_number, p_action, 'PRICE', 'ENDDATE', p_end_date);
4625: END IF;
4626: */

Line 4642: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4638: p_end_date IN VARCHAR2) IS
4639: l_progress VARCHAR2(5) := '100';
4640: BEGIN
4641: IF p_price_list_name IS NOT NULL THEN
4642: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4643: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4644: p_line_number, p_action, 'PRICELISTHEADER', 'PRICELIST', p_price_list_name);
4645: END IF;
4646:

Line 4650: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4646:
4647: l_progress := '110';
4648:
4649: IF p_currency IS NOT NULL THEN
4650: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4651: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4652: p_line_number, p_action, 'PRICELISTHEADER', 'CURRENCY', p_currency);
4653: END IF;
4654:

Line 4656: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4652: p_line_number, p_action, 'PRICELISTHEADER', 'CURRENCY', p_currency);
4653: END IF;
4654:
4655: IF p_buyer_name IS NOT NULL THEN
4656: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4657: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4658: p_line_number, p_action, 'PRICELISTHEADER', 'BUYER', p_buyer_name);
4659: END IF;
4660:

Line 4662: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4658: p_line_number, p_action, 'PRICELISTHEADER', 'BUYER', p_buyer_name);
4659: END IF;
4660:
4661: IF p_supplier_name IS NOT NULL THEN
4662: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4663: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4664: p_line_number, p_action, 'PRICELISTHEADER', 'SUPPLIER', p_supplier_name);
4665: END IF;
4666:

Line 4668: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4664: p_line_number, p_action, 'PRICELISTHEADER', 'SUPPLIER', p_supplier_name);
4665: END IF;
4666:
4667: IF p_begin_date IS NOT NULL THEN
4668: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4669: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4670: p_line_number, p_action, 'PRICELISTHEADER', 'BEGINDATE', p_begin_date);
4671: END IF;
4672:

Line 4674: INSERT INTO icx_por_failed_lines (job_number, line_number, action,

4670: p_line_number, p_action, 'PRICELISTHEADER', 'BEGINDATE', p_begin_date);
4671: END IF;
4672:
4673: IF p_end_date IS NOT NULL THEN
4674: INSERT INTO icx_por_failed_lines (job_number, line_number, action,
4675: row_type, descriptor_key, descriptor_value) VALUES (p_request_id,
4676: p_line_number, p_action, 'PRICELISTHEADER', 'ENDDATE', p_end_date);
4677: END IF;
4678:

Line 4683: -- into ICX_POR_FAILED_LINES and ICX_POR_FAILED_LINE_MESSAGES table

4679: END save_failed_price_list;
4680:
4681: --
4682: -- Move the error message from ICX_POR_CONTRACT_REFERENCE table
4683: -- into ICX_POR_FAILED_LINES and ICX_POR_FAILED_LINE_MESSAGES table
4684: --
4685: -- bug#1968033
4686: PROCEDURE save_failed_admin_data (p_request_id in number)
4687: IS

Line 4906: INSERT INTO icx_por_failed_lines

4902: l_progress VARCHAR2(5) := '100';
4903: BEGIN
4904:
4905: IF p_buyer IS NOT NULL THEN
4906: INSERT INTO icx_por_failed_lines
4907: (job_number, line_number, action, row_type, descriptor_key, descriptor_value)
4908: VALUES
4909: (p_request_id, p_line_number, 'SYNC', 'ADMIN', 'BUYER', p_buyer);
4910: END IF;

Line 4915: INSERT INTO icx_por_failed_lines

4911:
4912: l_progress := '110';
4913:
4914: IF p_contract_ref_num IS NOT NULL THEN
4915: INSERT INTO icx_por_failed_lines
4916: (job_number, line_number, action, row_type, descriptor_key, descriptor_value)
4917: VALUES
4918: (p_request_id, p_line_number, 'SYNC', 'ADMIN', 'CONTRACT_NUM', p_contract_ref_num);
4919: END IF;

Line 4947: DELETE FROM icx_por_failed_lines where job_number = p_request_id;

4943: l_progress VARCHAR2(5) := '100';
4944: BEGIN
4945: l_progress := '110';
4946: -- When a catalog is rejected, Dont show any other Failed Lines
4947: DELETE FROM icx_por_failed_lines where job_number = p_request_id;
4948:
4949: l_progress := '120';
4950: -- Insert Buyer Reference
4951: INSERT INTO icx_por_failed_lines

Line 4951: INSERT INTO icx_por_failed_lines

4947: DELETE FROM icx_por_failed_lines where job_number = p_request_id;
4948:
4949: l_progress := '120';
4950: -- Insert Buyer Reference
4951: INSERT INTO icx_por_failed_lines
4952: (job_number, line_number, action, row_type, descriptor_key, descriptor_value)
4953: --Bug#2729328
4954: --VALUES (p_request_id, 1, 'SYNC', p_line_type, p_descriptor_key, p_descriptor_key);
4955: VALUES (p_request_id, 1, 'SYNC', p_line_type, p_descriptor_key, p_descriptor_val);