Пример #1
0
 /**
  * @param null $UserSpaceName
  * @param null $USLib
  * @param int $InitSize
  * @param string $publicAuthority
  * @param string $InitValue
  * @param string $extendedAttribute
  * @param string $textDescription
  * @return bool
  */
 public function CreateUserSpace($UserSpaceName = NULL, $USLib = NULL, $InitSize = 1024, $publicAuthority = '*ALL', $InitValue = ' ', $extendedAttribute = 'PF', $textDescription = 'ZS XML Service User Space')
 {
     // @todo check that 1 <= InitSize <= 16776704
     // set defaults in case blank is passed in
     $InitSize = $InitSize ? $InitSize : 1024;
     $publicAuthority = $publicAuthority ? $publicAuthority : '*ALL';
     $InitValue = $InitValue ? $InitValue : '00';
     // single binary hex value X'00, most efficient initialization, according to documentation of QUSCRTUS
     $extendedAttribute = $extendedAttribute ? $extendedAttribute : 'PF';
     $textDescription = $textDescription ? $textDescription : 'ZS XML Service User Space';
     // format the user space name and library into 20 char format
     $this->setUSName($UserSpaceName, $USLib);
     // format extended attribute into proper format (left-aligned)
     $extAttrFormatted = sprintf("%-10s", $extendedAttribute);
     // format authority into proper format (left-aligned)
     $authFormatted = sprintf("%-10s", $publicAuthority);
     $params[] = Toolkit::AddParameterChar('in', 20, "USER SPACE NAME", 'userspacename', $this->getUSFullName());
     $params[] = Toolkit::AddParameterChar('in', 10, "Extended Attribute", 'extendedattribute', $extAttrFormatted);
     $params[] = Toolkit::AddParameterInt32('in', "Initial Size", 'initialsize', $InitSize);
     $params[] = Toolkit::AddParameterBin('in', 1, "Initial Value: one byte to fill whole space with", 'initval', $InitValue);
     $params[] = Toolkit::AddParameterChar('in', 10, "Public Authority", 'authority', $authFormatted);
     $params[] = Toolkit::AddParameterChar('in', 50, "Description", 'description', $textDescription);
     $params[] = Toolkit::AddParameterChar('in', 10, "Replace US", 'replaceuserspace', "*NO       ");
     $params[] = Toolkit::AddErrorDataStruct();
     //        $params = $this->DefineUserSpaceParameters($InitSize, $Auth, $InitChar);
     $retPgmArr = $this->ToolkitSrvObj->PgmCall('QUSCRTUS', 'QSYS', $params);
     if ($this->ToolkitSrvObj->verify_CPFError($retPgmArr, "Create user space failed.")) {
         return false;
     }
     return true;
     //created
 }