/** * Gets the historical journal for an object from the log database. * Objects will have VirtualAttributes available to lookup login, date, and action information from the journal object. * @param integer intCustomFieldId * @return CustomField[] */ public static function GetJournalForId($intCustomFieldId) { $objDatabase = CustomField::GetDatabase()->JournalingDatabase; $objResult = $objDatabase->Query('SELECT * FROM custom_field WHERE custom_field_id = ' . $objDatabase->SqlVariable($intCustomFieldId) . ' ORDER BY __sys_date'); return CustomField::InstantiateDbResult($objResult); }
/** * Static Qcodo Query method to query for an array of CustomField objects. * Uses BuildQueryStatment to perform most of the work. * @param QQCondition $objConditions any conditions on the query, itself * @param QQClause[] $objOptionalClausees additional optional QQClause objects for this query * @param mixed[] $mixParameterArray a array of name-value pairs to perform PrepareStatement with * @return CustomField[] the queried objects as an array */ public static function QueryArray(QQCondition $objConditions, $objOptionalClauses = null, $mixParameterArray = null) { // Get the Query Statement try { $strQuery = CustomField::BuildQueryStatement($objQueryBuilder, $objConditions, $objOptionalClauses, $mixParameterArray, false); } catch (QCallerException $objExc) { $objExc->IncrementOffset(); throw $objExc; } // Perform the Query and Instantiate the Array Result $objDbResult = $objQueryBuilder->Database->Query($strQuery); return CustomField::InstantiateDbResult($objDbResult, $objQueryBuilder->ExpandAsArrayNodes); }
/** * Loads an array of entities (assets, inventory, e.g.) based on their active flag and entity qtype * * @param bool $blnActiveFlag if the field is active or inactive * @param integer $intEntityId AssetId, InventoryId, e.g. based on * @param string $strOrderBy * @param string $strLimit * @param Object ExpansionMap $objExpansionMap * @return Array CustomField[] */ public static function LoadArrayByActiveFlagEntity($blnActiveFlag, $intEntityQtypeId, $strOrderBy = null, $strLimit = null, $objExpansionMap = null, $searchable = false) { // Call to ArrayQueryHelper to Get Database Object and Get SQL Clauses CustomField::ArrayQueryHelper($strOrderBy, $strLimit, $strLimitPrefix, $strLimitSuffix, $strExpandSelect, $strExpandFrom, $objExpansionMap, $objDatabase); // Properly Escape All Input Parameters using Database->SqlVariable() $blnActiveFlag = $objDatabase->SqlVariable($blnActiveFlag, true); $intEntityQtypeId = $objDatabase->SqlVariable($intEntityQtypeId, true); // Add searching mode $strSearchable = ''; if ($searchable) { $strSearchable = ' `custom_field`.`searchable_flag` = 1 AND '; } // Setup the SQL Query $strQuery = sprintf(' SELECT %s `custom_field`.* %s FROM `entity_qtype_custom_field` AS `entity_qtype_custom_field`, `custom_field` AS `custom_field` %s WHERE %s `custom_field`.`active_flag` %s AND `custom_field`.`custom_field_id` = `entity_qtype_custom_field`.`custom_field_id` AND `entity_qtype_custom_field`.`entity_qtype_id` %s %s %s', $strLimitPrefix, $strExpandSelect, $strExpandFrom, $strSearchable, $blnActiveFlag, $intEntityQtypeId, $strOrderBy, $strLimitSuffix); // Perform the Query and Instantiate the Result $objDbResult = $objDatabase->Query($strQuery); return CustomField::InstantiateDbResult($objDbResult); }