APAR status
Closed as Permanent restriction.
Error description
CQ Perl syntax error: Scalar value @signInState[0] better written as $signInState[0] at (eval1) When using the CQ Perl API 7.1.1.0, the following syntax warnings occur from the esignature hook code. Scalar value @signInState[0] better written as $signInState[0] at (eval1) line 5265. Scalar value @signInState[1] better written as $signInState[1] at (eval1) line 5265. Scalar value @signEnteringState[0] better written as$signEnteringState[0] at (eval 1) line 5268. Scalar value @signEnteringState[1] better written as$signEnteringState[1] at (eval 1) line 5268. Scalar value @signLeavingState[0] better written as $signLeavingState[0]at (eval 1) line 5271. Scalar value @signLeavingState[1] better written as $signLeavingState[1]at (eval 1) line 5271. The Warning/Error messages are coming from the Rational Esignature package perl hook code which customers can not modify: sub eSig_IsSigRequired { # If the eSignature package is disabled, just return 0. # Note that this will invoke the customer extension # esigCust_Disable_eSignature . if (eSig_IsDisabled()) { return 0; } my ($session, $entity) = @_; my $isRequired = $CQPerlExt::CQ_READONLY; ## Return $CQPerlExt::CQ_MANDATORY iff there's an eSig_Config record matching: ## eSig_Signed_Record_Type == $entityType AND ## ( <Match the record's old or new state> ## (eSig_Signature_States contains $oldState AND ## eSig_Signature_States in ['Leaving State', 'Modify In State']) OR ## (eSig_Signature_States contains $newState AND ## eSig_Signature_States in ['Entering State', 'Modify In State'])) ## OR ## ( <matching the action type> ## esig_signed_actions contains $actionType) ## ## Note on translations: ## The choices and default value for the 'Sign When' field may be translated in the ## schema, but it's possible for a user database to contain config records that were ## created before the translations were applied (and so contain the English values, ## not the translated values.) The code here that generates the query on the 'Sign When' ## field is written so as to be language-neutral, but always including the English ## choice values -- and also the translated values, if they are applicable. my @signInState = eSig_SignInState(); shift @signInState if (@signInState[0] eq @signInState[1]); my @signEnteringState = eSig_SignEnteringState(); shift @signEnteringState if (@signEnteringState[0] eq@signEnteringState[1]); my @signLeavingState = eSig_SignLeavingState(); shift @signLeavingState if (@signLeavingState[0] eq@signLeavingState[1]); my $oldState = ''; my $newState = ''; The work around to this is by using the statement 'use strict;' in the sub routines and not in a global setting. That way 'use strict;' will not apply to all hooks.
Local fix
Problem summary
When either "Validate()" or "Commit()" is executed in a ClearQuest eSignature hook, Perl syntax warning messages are issued.
Problem conclusion
The workaround is to use the statement 'use strict;' in the sub routines and not in a global setting. That way 'use strict;' will not apply to all hooks. After analysis of this APAR we have determined we won't fix this issue due to: low priority/severity, the risk of a fix and a straightforward workaround. A priority decision has been made that this defect cannot be addressed in the next 18 months without neglecting issues of higher importance and less risk. Thank you for your understanding.
Temporary fix
Comments
APAR Information
APAR number
PM14613
Reported component name
CLEARQUEST WIN
Reported component ID
5724G3600
Reported release
711
Status
CLOSED PRS
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2010-05-14
Closed date
2010-06-25
Last modified date
2010-06-25
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Applicable component levels
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSSH5A","label":"Rational ClearQuest"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.1.1","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
25 June 2010