IBM Support

"Validate SQL Error ... PerLockBusiness_SelectCompPerLocks" when using "Change Period Locking by Company"

Technote (troubleshooting)


User click "Maintain - Period Locking - Change - Period Locking by Company...". User chooses parameters and clicks "Open". An error appears.


Standard Error

Number: 5
Source: FrangoDirect.PerLockHandler.SelectCompPerLocks#ControllerProxyClient
Description: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Exception: Validate SQL Error
at Cognos.Controller.SEC.ParameterValidator.ValidateParameter(String sParamType, String sItem, String sReadWrite)
at Cognos.Controller.SEC.ParameterValidator.ValidateParameter(String sParamType, String[] aItem, String sReadWrite)
at Cognos.Controller.Proxy.CCRWS.PerLockBusiness_SelectCompPerLocks(String sGuid, String sUser, Int32 lLocaleID, String sPerAkt, Int16 iSubm, String[] varCompany, Boolean bUseFilter)
--- End of inner exception stack trace ---
at Microsoft.VisualBasic.ErrObject.Raise(Int32 Number, Object Source, Object Description, Object HelpFile, Object HelpContext)
at Cognos.Controller.Common.RaiseErrCli.RaiseError(Int32 lErrNo, String sErrSource, String sErrDesc, String sErrHelpFile, Int32 lErrHelpContext)
at Cognos.Controller.Direct.PerLockHandler.SelectCompPerLocks(String sPerAkt, Int16 iSubm, Object varCompany, Boolean bUseFilter)
at Cognos.Controller.Forms.Form.frmPerLockComp.LoadPeriodLocks(Boolean& bForce)


Invalid structures inside Controller.

More Information
In one real-life case, the customer had recently mistakenly created/imported some new company names (inside their company structure) which had spaces in them.

Resolving the problem


Fix the invalid structures inside Controller.

    More Information:
    In one real-life customer case, the customer clicked "Maintain - Company Structure - Change Table - Define/Run"...

    ...and then created (and then ran) a new entry which changed the companies from their old code (e.g. "AB CDE") to their new (correct) value (e.g. "ABCDE").

  1. Logon to the Controller application server as an administrator
  2. Open the folder "...c10\ControllerProxyServer". TIP: By default this is located here: C:\Program Files (x86)\ibm\cognos\c10\ControllerProxyServer
  3. As a precaution, create a backup copy of "WebServiceParameterCheck.acl" (e.g. "WebServiceParameterCheck.original.backup")
  4. Open the file "WebServiceParameterCheck.acl" inside NOTEPAD.EXE
  5. Search to locate the phrase "PerLockBusiness_SelectCompPerLocks". TIP: By default, the line will look as follows: PerLockBusiness_SelectCompPerLocks        1
  6. Modify the value from the default (1) to: 0
  7. Save changes
  8. Test.

Document information

More support for: Cognos Controller

Software version: 10.1.1

Operating system(s): Windows

Reference #: 1646597

Modified date: 16 August 2013

Translate this page: