PCM_OP_PYMT_TOPUP Failed With Error PIN_FLD_GROUP_OBJ Not Found (Doc ID 558183.1)

Last updated on SEPTEMBER 26, 2016

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.3.0.0.0 to 7.3.0.0.0 [Release 7.3.0]
Information in this document applies to any platform.
***Checked for relevance on 20-Jun-2012***
Checked for relevance on 04-May-2016.

Symptoms

PCM_OP_PYMT_TOPUP resulted in PIN_FLD_GROUP_OBJ not found .

Patch applied:
7.3 + 4489 + 5903622 + 6491208

After using the following testnap script to create a sponsored topup group (with PCM_OP_CUST_UPDATE_CUSTOMER):

r << XXX 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 640674
0 PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 640674
0 PIN_FLD_PROGRAM_NAME STR [0] "Setup Topup"
0 PIN_FLD_TOPUP_INFO ARRAY [0]
1    PIN_FLD_POID POID [0] 0.0.0.1 /topup -1
1    PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 640674
1    PIN_FLD_PARENT POID [0] 0.0.0.1 /account 639170
1    PIN_FLD_BILLINFO_OBJ POID [0] 0.0.0.1 /billinfo 641442
1    PIN_FLD_GROUP_TOPUP_INFO ARRAY [0]
2       PIN_FLD_POID POID [0] 0.0.0.1 /group/topup -1
2       PIN_FLD_PARENT POID [0] 0.0.0.1 /account 639170
2       PIN_FLD_NAME STR [0] "Poppy Topup Group"
2       PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 640706
2       PIN_FLD_GROUP_TOPUP_MEMBERS ARRAY [0]
3          PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 639906
3          PIN_FLD_TOPUP_INTERVAL INT [0] 1
2       PIN_FLD_GROUP_TOPUP_LIMITS ARRAY [0]
3          PIN_FLD_RESOURCE_ID INT [0] 840
3          PIN_FLD_TOPUP_AMT DECIMAL [0] 10.00
3          PIN_FLD_TOPUP_CAP DECIMAL [0] 2000.00
XXX
xop PCM_OP_CUST_UPDATE_CUSTOMER 0 1



Output flist:

xop: opcode 84, flags 0
# number of field entries allocated 20, used 2
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 640674 0
0 PIN_FLD_TOPUP_INFO ARRAY [0] allocated 20, used 5
1    PIN_FLD_POID POID [0] 0.0.0.1 /topup 639359 1
1    PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 640674 0
1    PIN_FLD_PARENT POID [0] 0.0.0.1 /account 639170 1
1    PIN_FLD_BILLINFO_OBJ POID [0] 0.0.0.1 /billinfo 641442 1
1    PIN_FLD_GROUP_TOPUP_INFO ARRAY [0] allocated 20, used 6
2       PIN_FLD_POID POID [0] 0.0.0.1 /group/topup 642687 2
2       PIN_FLD_PARENT POID [0] 0.0.0.1 /account 639170 2
2       PIN_FLD_NAME STR [0] "Poppy Topup Group"
2       PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 640706 2
2       PIN_FLD_GROUP_TOPUP_MEMBERS ARRAY [0] allocated 20, used 2
3          PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 639906 3
3          PIN_FLD_TOPUP_INTERVAL INT [0] 1
2       PIN_FLD_GROUP_TOPUP_LIMITS ARRAY [0] allocated 20, used 3
3          PIN_FLD_RESOURCE_ID INT [0] 840
3          PIN_FLD_TOPUP_AMT DECIMAL [0] 10
3          PIN_FLD_TOPUP_CAP DECIMAL [0] 2000


Based on the documentation, because the member initiated adding itself to the sponsored topup group, then the member's group status has to be set to ACTIVE and the topup PIN must be set using PCM_OP_CUST_SET_TOPUP. This must be done before a manual sponsored topup can be done using
PCM_OP_PYMT_TOPUP.

So the following flist was used for PCM_OP_CUST_SET_TOPUP:

r << XXX 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 640674
0 PIN_FLD_PROGRAM_NAME STR [0] "Payment Topup"
0 PIN_FLD_INHERITED_INFO SUBSTRUCT [0]
1    PIN_FLD_TOPUP_INFO ARRAY [0]
2       PIN_FLD_POID POID [0] 0.0.0.1 /topup 639359
2       PIN_FLD_BILLINFO_OBJ POID [0] 0.0.0.1 /billinfo 641442 1
2       PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 639906
2       PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 640674 0
2       PIN_FLD_BAL_INFO ARRAY [0]
3          PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 640706
2       PIN_FLD_BAL_INFO ARRAY [1]
3          PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 639906
2       PIN_FLD_GROUP_INDEX INT [0] 0
2       PIN_FLD_GROUP_OBJ POID [0] 0.0.0.1 /group/topup 642687 2
2       PIN_FLD_RESOURCE_ID INT [0] 840
2       PIN_FLD_PARENT POID [0] 0.0.0.1 /account 639170
2       PIN_FLD_PIN STR [0] "abc123"
2       PIN_FLD_TOPUP_AMT DECIMAL [0] 10.00
2       PIN_FLD_TOPUP_INTERVAL INT [0] 1
2       PIN_FLD_TOPUP_CAP DECIMAL [0] 2000
2       PIN_FLD_NEXT_TOPUP_T TSTAMP [0] (1212474959)
XXX
xop PCM_OP_CUST_SET_TOPUP 0 1


Result:

xop: opcode 3905, flags 0
# number of field entries allocated 20, used 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /topup 639359 1


However, when following the document and giving the following input flist for PCM_OP_PYMT_TOPUP, an error occurred.

r << XXX 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 640674
0 PIN_FLD_PROGRAM_NAME STR [0] "Payment Topup"
0 PIN_FLD_INHERITED_INFO SUBSTRUCT [0]
1    PIN_FLD_TOPUP_INFO ARRAY [0]
2       PIN_FLD_POID POID [0] 0.0.0.1 /topup 639359
2       PIN_FLD_BILLINFO_OBJ POID [0] 0.0.0.1 /billinfo 641442 1
2       PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 639906
2       PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 640674 0
2       PIN_FLD_BAL_INFO ARRAY [0]
3          PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 640706
2       PIN_FLD_BAL_INFO ARRAY [1]
3          PIN_FLD_BAL_GRP_OBJ POID [0] 0.0.0.1 /balance_group 639906
2       PIN_FLD_RESOURCE_ID INT [0] 840
2       PIN_FLD_PARENT POID [0] 0.0.0.1 /account 639170
2       PIN_FLD_PIN STR [0] "abc123"
2       PIN_FLD_TOPUP_AMT DECIMAL [0] 10.00
XXX
xop PCM_OP_PYMT_TOPUP 0 1



Got error

xop: opcode 3726, flags 0
XOP "3726" failed: err 3:PIN_ERR_NOT_FOUND, field 0/45:PIN_FLD_GROUP_OBJ,
    loc 6:PIN_ERRLOC_FLIST, errclass 1:PIN_ERRCLASS_SYSTEM_DETERMINATE, rec_id 0, resvd 0
# number of field entries allocated 20, used 2
0 PIN_FLD_POID POID [0] 0.0.0.1 /error_poid 640674 0
0 PIN_FLD_ERR_BUF ERR [0]
   <location=PIN_ERRLOC_FLIST:6 class=PIN_ERRCLASS_SYSTEM_DETERMINATE:1 errno=PIN_ERR_NOT_FOUND:3>
   <field num=PIN_FLD_GROUP_OBJ:7,45 recid=0 reserved=0 reserved2=0 time sec:usec)=0:0>
   <facility=0 msg_id=0 version=0>


cm.pinlog logged the following error:

D Fri Sep 26 00:25:31 2008 myhost cm:25295 fm_bill_utils_config.c:87
1:myhost:testnap:25292:1:3726:1204045745:1
   ##### op_bill_utils_prep_lock_obj(): output flist
# number of field entries allocated 20, used 2
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 640674 0
0 PIN_FLD_LOCK_INFO SUBSTRUCT [0] allocated 20, used 2
1    PIN_FLD_TEMPLATE STR [0] "select X from /balance_group where F1 = V1 order by poid_id0 "
1    PIN_FLD_ARGS ARRAY [1] allocated 20, used 1
2       PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 640674 0
D Fri Sep 26 00:25:31 2008 myhost cm:25295 fm_bill_utils_channel.c:517
1:myhost:testnap:25292:1:3726:1204045745:1
   Inside fm_utils_channel_postabort
D Fri Sep 26 00:25:31 2008 myhost cm:25295 fm_trans_pol_abort.c:83
1:myhost:testnap:25292:1:3726:1204045745:1
   op_trans_pol_abort input flist
# number of field entries allocated 20, used 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 640674 0
D Fri Sep 26 00:25:31 2008 myhost cm:25295 fm_trans_pol_abort.c:115
1:myhost:testnap:25292:1:3726:1204045745:1
   op_trans_pol_abort return flist
# number of field entries allocated 20, used 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 640674 0
E Fri Sep 26 00:25:31 2008 myhost cm:25295 fm_pymt_topup.cpp:1458
1:myhost:testnap:25292:1:3726:1204045745:1
   fm_pymt_sponsored_topup error
   <location=PIN_ERRLOC_FLIST:6 class=PIN_ERRCLASS_SYSTEM_DETERMINATE:1 errno=PIN_ERR_NOT_FOUND:3>
   <field num=PIN_FLD_GROUP_OBJ:7,45 recid=0 reserved=0 reserved2=0 time sec:usec)=0:0>
   <facility=0 msg_id=0 version=0>
E Fri Sep 26 00:25:31 2008 myhost cm:25295 fm_pymt_topup.cpp:744
1:myhost:testnap:25292:1:3726:1204045745:1
   fm_pymt_topup_dotopup error
E Fri Sep 26 00:25:31 2008 myhost cm:25295 fm_pymt_topup.cpp:155
1:myhost:testnap:25292:1:3726:1204045745:1
   op_pymt_topup error
   <location=PIN_ERRLOC_FLIST:6 class=PIN_ERRCLASS_SYSTEM_DETERMINATE:1 errno=PIN_ERR_NOT_FOUND:3>
   <field num=PIN_FLD_GROUP_OBJ:7,45 recid=0 reserved=0 reserved2=0 time sec:usec)=0:0>
   <facility=0 msg_id=0 version=0>


Steps To Reproduce:
1. Create a manual sponsored topup group with PCM_OP_CUST_UPDATE_CUSTOMER (input flist described above)
2. Add a member to the sponsored topup group using PCM_OP_CUST_SET_TOPUP (input flist described above)
3. Call PCM_OP_PYMT_TOPUP (input flist described above)

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms