| 
								
							 | 
							
								        /**
							 | 
						
						
						
							| 
								
							 | 
							
								         * Refresh this MetaControl with Data from the local <%= $objTable->ClassName %> object.
							 | 
						
						
						
							| 
								
							 | 
							
								         * @param boolean $blnReload reload <%= $objTable->ClassName %> from the database
							 | 
						
						
						
							| 
								
							 | 
							
								         * @return void
							 | 
						
						
						
							| 
								
							 | 
							
								         */
							 | 
						
						
						
							| 
								
							 | 
							
								        public function Refresh($blnReload = false) {
							 | 
						
						
						
							| 
								
							 | 
							
								            if ($blnReload)
							 | 
						
						
						
							| 
								
							 | 
							
								                $this-><%= $objCodeGen->VariableNameFromTable($objTable->Name); %>->Reload();
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								<% foreach ($objTable->ColumnArray as $objColumn) { %><%
							 | 
						
						
						
							| 
								
							 | 
							
								    // Use the "control_refresh_" subtemplates to generate the code
							 | 
						
						
						
							| 
								
							 | 
							
								    // required to create/setup the control.
							 | 
						
						
						
							| 
								
							 | 
							
								    $mixArguments = array(
							 | 
						
						
						
							| 
								
							 | 
							
								        'objColumn' => $objColumn,
							 | 
						
						
						
							| 
								
							 | 
							
								        'strObjectName' => $objCodeGen->VariableNameFromTable($objTable->Name),
							 | 
						
						
						
							| 
								
							 | 
							
								        'strClassName' => $objTable->ClassName,
							 | 
						
						
						
							| 
								
							 | 
							
								        'strControlId' => $objCodeGen->FormControlVariableNameForColumn($objColumn),
							 | 
						
						
						
							| 
								
							 | 
							
								        'strLabelId' => $objCodeGen->FormLabelVariableNameForColumn($objColumn)
							 | 
						
						
						
							| 
								
							 | 
							
								    );
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								    // Figure out WHICH "control_refresh_" to use
							 | 
						
						
						
							| 
								
							 | 
							
								    if ($objColumn->Identity) {
							 | 
						
						
						
							| 
								
							 | 
							
								        $strTemplateFilename = 'identity';
							 | 
						
						
						
							| 
								
							 | 
							
								    } else if ($objColumn->Timestamp) {
							 | 
						
						
						
							| 
								
							 | 
							
								        $strTemplateFilename = 'identity';
							 | 
						
						
						
							| 
								
							 | 
							
								    } else if ($objColumn->Reference) {
							 | 
						
						
						
							| 
								
							 | 
							
								        if ($objColumn->Reference->IsType)
							 | 
						
						
						
							| 
								
							 | 
							
								            $strTemplateFilename = 'type';
							 | 
						
						
						
							| 
								
							 | 
							
								        else
							 | 
						
						
						
							| 
								
							 | 
							
								            $strTemplateFilename = 'reference';
							 | 
						
						
						
							| 
								
							 | 
							
								    } else {
							 | 
						
						
						
							| 
								
							 | 
							
								        $strTemplateFilename = $objColumn->VariableType;
							 | 
						
						
						
							| 
								
							 | 
							
								    }
							 | 
						
						
						
							| 
								
							 | 
							
								    
							 | 
						
						
						
							| 
								
							 | 
							
								    // Get the subtemplate and evaluate
							 | 
						
						
						
							| 
								
							 | 
							
								    return $objCodeGen->EvaluateSubTemplate(sprintf('control_refresh_%s.tpl', $strTemplateFilename), $strModuleName, $mixArguments) . "\n\n";
							 | 
						
						
						
							| 
								
							 | 
							
								%><% } %>
							 | 
						
						
						
							| 
								
							 | 
							
								<% foreach ($objTable->ReverseReferenceArray as $objReverseReference) { %><%
							 | 
						
						
						
							| 
								
							 | 
							
								    if ($objReverseReference->Unique) { 
							 | 
						
						
						
							| 
								
							 | 
							
								        // Use the "control_refresh_" subtemplates to generate the code
							 | 
						
						
						
							| 
								
							 | 
							
								        // required to create/setup the control.
							 | 
						
						
						
							| 
								
							 | 
							
								        $mixArguments = array(
							 | 
						
						
						
							| 
								
							 | 
							
								            'objReverseReference' => $objReverseReference,
							 | 
						
						
						
							| 
								
							 | 
							
								            'objTable' => $objTable,
							 | 
						
						
						
							| 
								
							 | 
							
								            'strObjectName' => $objCodeGen->VariableNameFromTable($objTable->Name),
							 | 
						
						
						
							| 
								
							 | 
							
								            'strClassName' => $objTable->ClassName,
							 | 
						
						
						
							| 
								
							 | 
							
								            'strControlId' => $objCodeGen->FormControlVariableNameForUniqueReverseReference($objReverseReference),
							 | 
						
						
						
							| 
								
							 | 
							
								            'strLabelId' => $objCodeGen->FormLabelVariableNameForUniqueReverseReference($objReverseReference)
							 | 
						
						
						
							| 
								
							 | 
							
								        );
							 | 
						
						
						
							| 
								
							 | 
							
								        // Get the subtemplate and evaluate
							 | 
						
						
						
							| 
								
							 | 
							
								        return $objCodeGen->EvaluateSubTemplate('control_refresh_unique_reversereference.tpl', $strModuleName, $mixArguments) . "\n\n";
							 | 
						
						
						
							| 
								
							 | 
							
								    } else
							 | 
						
						
						
							| 
								
							 | 
							
								        return null;
							 | 
						
						
						
							| 
								
							 | 
							
								%><% } %>
							 | 
						
						
						
							| 
								
							 | 
							
								<% foreach ($objTable->ManyToManyReferenceArray as $objManyToManyReference) { %><%
							 | 
						
						
						
							| 
								
							 | 
							
								    // Use the "control_refresh_manytomany_reference" subtemplate to generate the code
							 | 
						
						
						
							| 
								
							 | 
							
								    // required to create/setup the control.
							 | 
						
						
						
							| 
								
							 | 
							
								    $mixArguments = array(
							 | 
						
						
						
							| 
								
							 | 
							
								        'objManyToManyReference' => $objManyToManyReference,
							 | 
						
						
						
							| 
								
							 | 
							
								        'objTable' => $objTable,
							 | 
						
						
						
							| 
								
							 | 
							
								        'strObjectName' => $objCodeGen->VariableNameFromTable($objTable->Name),
							 | 
						
						
						
							| 
								
							 | 
							
								        'strClassName' => $objTable->ClassName,
							 | 
						
						
						
							| 
								
							 | 
							
								        'strControlId' => $objCodeGen->FormControlVariableNameForManyToManyReference($objManyToManyReference),
							 | 
						
						
						
							| 
								
							 | 
							
								        'strLabelId' => $objCodeGen->FormLabelVariableNameForManyToManyReference($objManyToManyReference)
							 | 
						
						
						
							| 
								
							 | 
							
								    );
							 | 
						
						
						
							| 
								
							 | 
							
								    // Get the subtemplate and evaluate
							 | 
						
						
						
							| 
								
							 | 
							
								    return $objCodeGen->EvaluateSubTemplate('control_refresh_manytomany_reference.tpl', $strModuleName, $mixArguments) . "\n\n";
							 | 
						
						
						
							| 
								
							 | 
							
								%><% } %>
							 | 
						
						
						
							| 
								
							 | 
							
								        }
							 |