<?php
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 *                                   ATTENTION!
 * If you see this message in your browser (Internet Explorer, Mozilla Firefox, Google Chrome, etc.)
 * this means that PHP is not properly installed on your web server. Please refer to the PHP manual
 * for more details: http://php.net/manual/install.php 
 *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 */


    include_once dirname(__FILE__) . '/' . 'components/utils/check_utils.php';
    CheckPHPVersion();
    CheckTemplatesCacheFolderIsExistsAndWritable();


    include_once dirname(__FILE__) . '/' . 'phpgen_settings.php';
    include_once dirname(__FILE__) . '/' . 'database_engine/pgsql_engine.php';
    include_once dirname(__FILE__) . '/' . 'components/page.php';


    function GetConnectionOptions()
    {
        $result = GetGlobalConnectionOptions();
        $result['client_encoding'] = 'utf8';
        GetApplication()->GetUserAuthorizationStrategy()->ApplyIdentityToConnectionOptions($result);
        return $result;
    }

    
    
    // OnBeforePageExecute event handler
    
    
    
    class objets_date_objetDetailView0vues_vm_objet_vue_de_basePage extends DetailPage
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"objets"."date_objet"');
            $field = new IntegerField('pk_date_objet', null, null, true);
            $field->SetIsNotNull(true);
            $this->dataset->AddField($field, true);
            $field = new StringField('date_iso');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $this->dataset->AddField($field, false);
            $field = new StringField('libelle_original_date');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new StringField('descriptif');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $field = new StringField('certitude');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_type_date_param', 'vues.vn_types_date', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_date_param_valeur', 'fk_type_date_param_valeur_vues_vn_types_date'), 'fk_type_date_param_valeur_vues_vn_types_date');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailViewGrid0vues_vm_objet_vue_de_base_libelle_original_date_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailViewGrid0vues_vm_objet_vue_de_base_descriptif_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailViewGrid0vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for certitude field
            //
            $column = new TextViewColumn('certitude', 'Certitude', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
        
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'objets_date_objetDetailViewGrid0vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $defaultSortedColumns = array();
            $defaultSortedColumns[] = new SortColumn('date_iso', 'ASC');
            $result->setDefaultOrdering($defaultSortedColumns);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->AddFieldColumns($result);
            //
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailViewGrid0vues_vm_objet_vue_de_base_libelle_original_date_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailViewGrid0vues_vm_objet_vue_de_base_descriptif_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailViewGrid0vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
    }
    
    
    
    // OnBeforePageExecute event handler
    
    
    
    class objets_date_objetDetailEdit0vues_vm_objet_vue_de_basePage extends DetailPageEdit
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"objets"."date_objet"');
            $field = new IntegerField('pk_date_objet', null, null, true);
            $field->SetIsNotNull(true);
            $this->dataset->AddField($field, true);
            $field = new StringField('date_iso');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $this->dataset->AddField($field, false);
            $field = new StringField('libelle_original_date');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new StringField('descriptif');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $field = new StringField('certitude');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_type_date_param', 'vues.vn_types_date', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_date_param_valeur', 'fk_type_date_param_valeur_vues_vn_types_date'), 'fk_type_date_param_valeur_vues_vn_types_date');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function CreatePageNavigator()
        {
            $result = new CompositePageNavigator($this);
            
            $partitionNavigator = new PageNavigator('pnav', $this, $this->dataset);
            $partitionNavigator->SetRowsPerPage(20);
            $result->AddPageNavigator($partitionNavigator);
            
            return $result;
        }
    
        protected function CreateRssGenerator()
        {
            return null;
        }
    
        protected function CreateGridSearchControl(Grid $grid)
        {
            $grid->UseFilter = true;
            $grid->SearchControl = new SimpleSearch('objets_date_objetDetailEdit0vues_vm_objet_vue_de_basessearch', $this->dataset,
                array('date_iso', 'fk_type_date_param_valeur', 'libelle_original_date', 'descriptif', 'notes', 'certitude', 'pk_date_objet'),
                array($this->RenderText('Date Iso'), $this->RenderText('Fk Type Date Param'), $this->RenderText('Libelle Original Date'), $this->RenderText('Descriptif'), $this->RenderText('Notes'), $this->RenderText('Certitude'), $this->RenderText('Pk Date Objet')),
                array(
                    '=' => $this->GetLocalizerCaptions()->GetMessageString('equals'),
                    '<>' => $this->GetLocalizerCaptions()->GetMessageString('doesNotEquals'),
                    '<' => $this->GetLocalizerCaptions()->GetMessageString('isLessThan'),
                    '<=' => $this->GetLocalizerCaptions()->GetMessageString('isLessThanOrEqualsTo'),
                    '>' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThan'),
                    '>=' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThanOrEqualsTo'),
                    'ILIKE' => $this->GetLocalizerCaptions()->GetMessageString('Like'),
                    'STARTS' => $this->GetLocalizerCaptions()->GetMessageString('StartsWith'),
                    'ENDS' => $this->GetLocalizerCaptions()->GetMessageString('EndsWith'),
                    'CONTAINS' => $this->GetLocalizerCaptions()->GetMessageString('Contains')
                    ), $this->GetLocalizerCaptions(), $this, 'CONTAINS'
                );
        }
    
        protected function CreateGridAdvancedSearchControl(Grid $grid)
        {
            $this->AdvancedSearchControl = new AdvancedSearchControl('objets_date_objetDetailEdit0vues_vm_objet_vue_de_baseasearch', $this->dataset, $this->GetLocalizerCaptions(), $this->GetColumnVariableContainer(), $this->CreateLinkBuilder());
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('date_iso', $this->RenderText('Date Iso')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_type_date_param', $this->RenderText('Fk Type Date Param'), $lookupDataset, 'pk_parametre_systeme', 'valeur', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('libelle_original_date', $this->RenderText('Libelle Original Date')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('descriptif', $this->RenderText('Descriptif')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('notes', $this->RenderText('Notes')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('certitude', $this->RenderText('Certitude')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('pk_date_objet', $this->RenderText('Pk Date Objet')));
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function AddOperationsColumns(Grid $grid)
        {
            $actions = $grid->getActions();
            $actions->setCaption($this->GetLocalizerCaptions()->GetMessageString('Actions'));
            $actions->setPosition(ActionList::POSITION_LEFT);
            if ($this->GetSecurityInfo()->HasEditGrant())
            {
                $operation = new ModalEditOperation(
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'),
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'), $this->dataset,
                    $this->GetModalGridEditingHandler(), $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowEditButtonHandler', $this);
            }
            if ($this->GetSecurityInfo()->HasDeleteGrant())
            {
                $operation = new LinkOperation($this->GetLocalizerCaptions()->GetMessageString('Delete'), OPERATION_DELETE, $this->dataset, $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowDeleteButtonHandler', $this);
                $operation->SetAdditionalAttribute('data-modal-operation', 'delete');
                $operation->SetAdditionalAttribute('data-delete-handler-name', $this->GetModalGridDeleteHandler());
            }
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $operation = new ModalCopyOperation(
                    $this->GetLocalizerCaptions()->GetMessageString('Copy'),
                    $this->GetLocalizerCaptions()->GetMessageString('Copy'), $this->dataset,
                    $this->GetModalGridCopyHandler(), $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
            }
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_libelle_original_date_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_descriptif_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for certitude field
            //
            $column = new TextViewColumn('certitude', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
    
        protected function AddSingleRecordViewColumns(Grid $grid)
        {
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_libelle_original_date_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_descriptif_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_notes_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for certitude field
            //
            $column = new TextViewColumn('certitude', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
        }
    
        protected function AddEditColumns(Grid $grid)
        {
            //
            // Edit column for date_iso field
            //
            $editor = new TextEdit('date_iso_edit');
            $editor->SetMaxLength(59);
            $editColumn = new CustomEditColumn('Date Iso', 'date_iso', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_type_date_param field
            //
            $editor = new ComboBox('fk_type_date_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Date Param', 
                'fk_type_date_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for libelle_original_date field
            //
            $editor = new TextAreaEdit('libelle_original_date_edit', 50, 8);
            $editColumn = new CustomEditColumn('Libelle Original Date', 'libelle_original_date', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for descriptif field
            //
            $editor = new TextAreaEdit('descriptif_edit', 50, 8);
            $editColumn = new CustomEditColumn('Descriptif', 'descriptif', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for certitude field
            //
            $editor = new TextEdit('certitude_edit');
            $editor->SetMaxLength(1);
            $editColumn = new CustomEditColumn('Certitude', 'certitude', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
        }
    
        protected function AddInsertColumns(Grid $grid)
        {
            //
            // Edit column for date_iso field
            //
            $editor = new TextEdit('date_iso_edit');
            $editor->SetMaxLength(59);
            $editColumn = new CustomEditColumn('Date Iso', 'date_iso', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_type_date_param field
            //
            $editor = new ComboBox('fk_type_date_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Date Param', 
                'fk_type_date_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for libelle_original_date field
            //
            $editor = new TextAreaEdit('libelle_original_date_edit', 50, 8);
            $editColumn = new CustomEditColumn('Libelle Original Date', 'libelle_original_date', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for descriptif field
            //
            $editor = new TextAreaEdit('descriptif_edit', 50, 8);
            $editColumn = new CustomEditColumn('Descriptif', 'descriptif', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for certitude field
            //
            $editor = new TextEdit('certitude_edit');
            $editor->SetMaxLength(1);
            $editColumn = new CustomEditColumn('Certitude', 'certitude', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $grid->SetShowAddButton(true);
                $grid->SetShowInlineAddButton(false);
            }
            else
            {
                $grid->SetShowInlineAddButton(false);
                $grid->SetShowAddButton(false);
            }
        }
    
        protected function AddPrintColumns(Grid $grid)
        {
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for certitude field
            //
            $column = new TextViewColumn('certitude', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
        }
    
        protected function AddExportColumns(Grid $grid)
        {
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for certitude field
            //
            $column = new TextViewColumn('certitude', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        	$column->SetVariableContainer($this->GetColumnVariableContainer());
        }
    
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
        public function GetModalGridEditingHandler() { return 'objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_inline_edit'; }
        protected function GetEnableModalGridEditing() { return true; }
        public function ShowEditButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasEditGrant($this->GetDataset());
        }
        public function ShowDeleteButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasDeleteGrant($this->GetDataset());
        }
        
        public function GetModalGridDeleteHandler() { return 'objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_modal_delete'; }
        protected function GetEnableModalGridDelete() { return true; }
        
        public function GetModalGridCopyHandler() { return 'objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_inline_edit'; }
        protected function GetEnableModalGridCopy() { return true; }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base');
            if ($this->GetSecurityInfo()->HasDeleteGrant())
                $result->SetAllowDeleteSelected(false);
            else
                $result->SetAllowDeleteSelected(false);
            ApplyCommonPageSettings($this, $result);
            $result->SetUseImagesForActions(true);
            $defaultSortedColumns = array();
            $defaultSortedColumns[] = new SortColumn('date_iso', 'ASC');
            $result->setDefaultOrdering($defaultSortedColumns);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            $result->SetUseModalInserting(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->CreateGridSearchControl($result);
            $this->CreateGridAdvancedSearchControl($result);
            $this->AddOperationsColumns($result);
            $this->AddFieldColumns($result);
            $this->AddSingleRecordViewColumns($result);
            $this->AddEditColumns($result);
            $this->AddInsertColumns($result);
            $this->AddPrintColumns($result);
            $this->AddExportColumns($result);
    
            $this->SetShowPageList(true);
            $this->SetExportToExcelAvailable(true);
            $this->SetExportToWordAvailable(true);
            $this->SetExportToXmlAvailable(true);
            $this->SetExportToCsvAvailable(true);
            $this->SetExportToPdfAvailable(true);
            $this->SetPrinterFriendlyAvailable(true);
            $this->SetSimpleSearchAvailable(false);
            $this->SetAdvancedSearchAvailable(false);
            $this->SetVisualEffectsEnabled(true);
            $this->SetShowTopPageNavigator(true);
            $this->SetShowBottomPageNavigator(true);
    
            //
            // Http Handlers
            //
            //
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_libelle_original_date_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_descriptif_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);//
            // View column for libelle_original_date field
            //
            $column = new TextViewColumn('libelle_original_date', 'Libelle Original Date', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_libelle_original_date_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_descriptif_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_date_objetDetailEditGrid0vues_vm_objet_vue_de_base_notes_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
        
        public function OpenAdvancedSearchByDefault()
        {
            return false;
        }
    
        protected function DoGetGridHeader()
        {
            return '';
        }    
    }
    
    
    
    // OnBeforePageExecute event handler
    
    
    
    class objets_nom_objetDetailView1vues_vm_objet_vue_de_basePage extends DetailPage
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"objets"."nom_objet"');
            $field = new IntegerField('pk_nom_objet', null, null, true);
            $field->SetIsNotNull(true);
            $this->dataset->AddField($field, true);
            $field = new StringField('nom');
            $this->dataset->AddField($field, false);
            $field = new StringField('langue');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet');
            $this->dataset->AddField($field, false);
            $field = new BooleanField('est_standard');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_debut');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_fin');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_type_nom_param', 'vues.vn_types_nom_objet', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_nom_param_valeur', 'fk_type_nom_param_valeur_vues_vn_types_nom_objet'), 'fk_type_nom_param_valeur_vues_vn_types_nom_objet');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailViewGrid1vues_vm_objet_vue_de_base_nom_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailViewGrid1vues_vm_objet_vue_de_base_langue_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for est_standard field
            //
            $column = new TextViewColumn('est_standard', 'Est Standard', $this->dataset);
            $column->SetOrderable(false);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_debut field
            //
            $column = new TextViewColumn('date_debut', 'Date Debut', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_fin field
            //
            $column = new TextViewColumn('date_fin', 'Date Fin', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailViewGrid1vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
        
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'objets_nom_objetDetailViewGrid1vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->AddFieldColumns($result);
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailViewGrid1vues_vm_objet_vue_de_base_nom_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailViewGrid1vues_vm_objet_vue_de_base_langue_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailViewGrid1vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
    }
    
    
    
    // OnBeforePageExecute event handler
    
    
    
    class objets_nom_objetDetailEdit1vues_vm_objet_vue_de_basePage extends DetailPageEdit
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"objets"."nom_objet"');
            $field = new IntegerField('pk_nom_objet', null, null, true);
            $field->SetIsNotNull(true);
            $this->dataset->AddField($field, true);
            $field = new StringField('nom');
            $this->dataset->AddField($field, false);
            $field = new StringField('langue');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet');
            $this->dataset->AddField($field, false);
            $field = new BooleanField('est_standard');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_debut');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_fin');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_type_nom_param', 'vues.vn_types_nom_objet', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_nom_param_valeur', 'fk_type_nom_param_valeur_vues_vn_types_nom_objet'), 'fk_type_nom_param_valeur_vues_vn_types_nom_objet');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function CreatePageNavigator()
        {
            $result = new CompositePageNavigator($this);
            
            $partitionNavigator = new PageNavigator('pnav', $this, $this->dataset);
            $partitionNavigator->SetRowsPerPage(20);
            $result->AddPageNavigator($partitionNavigator);
            
            return $result;
        }
    
        protected function CreateRssGenerator()
        {
            return null;
        }
    
        protected function CreateGridSearchControl(Grid $grid)
        {
            $grid->UseFilter = true;
            $grid->SearchControl = new SimpleSearch('objets_nom_objetDetailEdit1vues_vm_objet_vue_de_basessearch', $this->dataset,
                array('nom', 'fk_type_nom_param_valeur', 'langue', 'est_standard', 'date_debut', 'date_fin', 'notes', 'pk_nom_objet'),
                array($this->RenderText('Nom'), $this->RenderText('Fk Type Nom Param'), $this->RenderText('Langue'), $this->RenderText('Est Standard'), $this->RenderText('Date Debut'), $this->RenderText('Date Fin'), $this->RenderText('Notes'), $this->RenderText('Pk Nom Objet')),
                array(
                    '=' => $this->GetLocalizerCaptions()->GetMessageString('equals'),
                    '<>' => $this->GetLocalizerCaptions()->GetMessageString('doesNotEquals'),
                    '<' => $this->GetLocalizerCaptions()->GetMessageString('isLessThan'),
                    '<=' => $this->GetLocalizerCaptions()->GetMessageString('isLessThanOrEqualsTo'),
                    '>' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThan'),
                    '>=' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThanOrEqualsTo'),
                    'ILIKE' => $this->GetLocalizerCaptions()->GetMessageString('Like'),
                    'STARTS' => $this->GetLocalizerCaptions()->GetMessageString('StartsWith'),
                    'ENDS' => $this->GetLocalizerCaptions()->GetMessageString('EndsWith'),
                    'CONTAINS' => $this->GetLocalizerCaptions()->GetMessageString('Contains')
                    ), $this->GetLocalizerCaptions(), $this, 'CONTAINS'
                );
        }
    
        protected function CreateGridAdvancedSearchControl(Grid $grid)
        {
            $this->AdvancedSearchControl = new AdvancedSearchControl('objets_nom_objetDetailEdit1vues_vm_objet_vue_de_baseasearch', $this->dataset, $this->GetLocalizerCaptions(), $this->GetColumnVariableContainer(), $this->CreateLinkBuilder());
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('nom', $this->RenderText('Nom')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_nom_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_type_nom_param', $this->RenderText('Fk Type Nom Param'), $lookupDataset, 'pk_parametre_systeme', 'valeur', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('langue', $this->RenderText('Langue')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('est_standard', $this->RenderText('Est Standard')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('date_debut', $this->RenderText('Date Debut')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('date_fin', $this->RenderText('Date Fin')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('notes', $this->RenderText('Notes')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('pk_nom_objet', $this->RenderText('Pk Nom Objet')));
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function AddOperationsColumns(Grid $grid)
        {
            $actions = $grid->getActions();
            $actions->setCaption($this->GetLocalizerCaptions()->GetMessageString('Actions'));
            $actions->setPosition(ActionList::POSITION_LEFT);
            if ($this->GetSecurityInfo()->HasEditGrant())
            {
                $operation = new ModalEditOperation(
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'),
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'), $this->dataset,
                    $this->GetModalGridEditingHandler(), $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowEditButtonHandler', $this);
            }
            if ($this->GetSecurityInfo()->HasDeleteGrant())
            {
                $operation = new LinkOperation($this->GetLocalizerCaptions()->GetMessageString('Delete'), OPERATION_DELETE, $this->dataset, $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowDeleteButtonHandler', $this);
                $operation->SetAdditionalAttribute('data-modal-operation', 'delete');
                $operation->SetAdditionalAttribute('data-delete-handler-name', $this->GetModalGridDeleteHandler());
            }
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $operation = new ModalCopyOperation(
                    $this->GetLocalizerCaptions()->GetMessageString('Copy'),
                    $this->GetLocalizerCaptions()->GetMessageString('Copy'), $this->dataset,
                    $this->GetModalGridCopyHandler(), $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
            }
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_nom_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_langue_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for est_standard field
            //
            $column = new TextViewColumn('est_standard', 'Est Standard', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_debut field
            //
            $column = new TextViewColumn('date_debut', 'Date Debut', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_fin field
            //
            $column = new TextViewColumn('date_fin', 'Date Fin', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
    
        protected function AddSingleRecordViewColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_nom_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_langue_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for est_standard field
            //
            $column = new TextViewColumn('est_standard', 'Est Standard', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for date_debut field
            //
            $column = new TextViewColumn('date_debut', 'Date Debut', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for date_fin field
            //
            $column = new TextViewColumn('date_fin', 'Date Fin', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_notes_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
        }
    
        protected function AddEditColumns(Grid $grid)
        {
            //
            // Edit column for nom field
            //
            $editor = new TextAreaEdit('nom_edit', 50, 8);
            $editColumn = new CustomEditColumn('Nom', 'nom', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_type_nom_param field
            //
            $editor = new ComboBox('fk_type_nom_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_nom_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Nom Param', 
                'fk_type_nom_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for langue field
            //
            $editor = new TextAreaEdit('langue_edit', 50, 8);
            $editColumn = new CustomEditColumn('Langue', 'langue', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for est_standard field
            //
            $editor = new CheckBox('est_standard_edit');
            $editColumn = new CustomEditColumn('Est Standard', 'est_standard', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for date_debut field
            //
            $editor = new TextEdit('date_debut_edit');
            $editor->SetMaxLength(10);
            $editColumn = new CustomEditColumn('Date Debut', 'date_debut', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for date_fin field
            //
            $editor = new TextEdit('date_fin_edit');
            $editor->SetMaxLength(10);
            $editColumn = new CustomEditColumn('Date Fin', 'date_fin', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
        }
    
        protected function AddInsertColumns(Grid $grid)
        {
            //
            // Edit column for nom field
            //
            $editor = new TextAreaEdit('nom_edit', 50, 8);
            $editColumn = new CustomEditColumn('Nom', 'nom', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $editColumn->SetAllowSetToDefault(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_type_nom_param field
            //
            $editor = new ComboBox('fk_type_nom_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_nom_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Nom Param', 
                'fk_type_nom_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for langue field
            //
            $editor = new TextAreaEdit('langue_edit', 50, 8);
            $editColumn = new CustomEditColumn('Langue', 'langue', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for est_standard field
            //
            $editor = new CheckBox('est_standard_edit');
            $editColumn = new CustomEditColumn('Est Standard', 'est_standard', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $editColumn->SetAllowSetToDefault(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for date_debut field
            //
            $editor = new TextEdit('date_debut_edit');
            $editor->SetMaxLength(10);
            $editColumn = new CustomEditColumn('Date Debut', 'date_debut', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for date_fin field
            //
            $editor = new TextEdit('date_fin_edit');
            $editor->SetMaxLength(10);
            $editColumn = new CustomEditColumn('Date Fin', 'date_fin', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $grid->SetShowAddButton(true);
                $grid->SetShowInlineAddButton(false);
            }
            else
            {
                $grid->SetShowInlineAddButton(false);
                $grid->SetShowAddButton(false);
            }
        }
    
        protected function AddPrintColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for est_standard field
            //
            $column = new TextViewColumn('est_standard', 'Est Standard', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $grid->AddPrintColumn($column);
            
            //
            // View column for date_debut field
            //
            $column = new TextViewColumn('date_debut', 'Date Debut', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for date_fin field
            //
            $column = new TextViewColumn('date_fin', 'Date Fin', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
        }
    
        protected function AddExportColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for est_standard field
            //
            $column = new TextViewColumn('est_standard', 'Est Standard', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $grid->AddExportColumn($column);
            
            //
            // View column for date_debut field
            //
            $column = new TextViewColumn('date_debut', 'Date Debut', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for date_fin field
            //
            $column = new TextViewColumn('date_fin', 'Date Fin', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        	$column->SetVariableContainer($this->GetColumnVariableContainer());
        }
    
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
        public function GetModalGridEditingHandler() { return 'objets_nom_objetDetailEdit1vues_vm_objet_vue_de_base_inline_edit'; }
        protected function GetEnableModalGridEditing() { return true; }
        public function ShowEditButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasEditGrant($this->GetDataset());
        }
        public function ShowDeleteButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasDeleteGrant($this->GetDataset());
        }
        
        public function GetModalGridDeleteHandler() { return 'objets_nom_objetDetailEdit1vues_vm_objet_vue_de_base_modal_delete'; }
        protected function GetEnableModalGridDelete() { return true; }
        
        public function GetModalGridCopyHandler() { return 'objets_nom_objetDetailEdit1vues_vm_objet_vue_de_base_inline_edit'; }
        protected function GetEnableModalGridCopy() { return true; }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base');
            if ($this->GetSecurityInfo()->HasDeleteGrant())
                $result->SetAllowDeleteSelected(false);
            else
                $result->SetAllowDeleteSelected(false);
            ApplyCommonPageSettings($this, $result);
            $result->SetUseImagesForActions(true);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->CreateGridSearchControl($result);
            $this->CreateGridAdvancedSearchControl($result);
            $this->AddOperationsColumns($result);
            $this->AddFieldColumns($result);
            $this->AddSingleRecordViewColumns($result);
            $this->AddEditColumns($result);
            $this->AddInsertColumns($result);
            $this->AddPrintColumns($result);
            $this->AddExportColumns($result);
    
            $this->SetShowPageList(true);
            $this->SetExportToExcelAvailable(true);
            $this->SetExportToWordAvailable(true);
            $this->SetExportToXmlAvailable(true);
            $this->SetExportToCsvAvailable(true);
            $this->SetExportToPdfAvailable(true);
            $this->SetPrinterFriendlyAvailable(true);
            $this->SetSimpleSearchAvailable(false);
            $this->SetAdvancedSearchAvailable(false);
            $this->SetVisualEffectsEnabled(true);
            $this->SetShowTopPageNavigator(true);
            $this->SetShowBottomPageNavigator(true);
    
            //
            // Http Handlers
            //
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_nom_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_langue_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);//
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_nom_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for langue field
            //
            $column = new TextViewColumn('langue', 'Langue', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_langue_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'objets_nom_objetDetailEditGrid1vues_vm_objet_vue_de_base_notes_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
        
        public function OpenAdvancedSearchByDefault()
        {
            return false;
        }
    
        protected function DoGetGridHeader()
        {
            return '';
        }    
    }
    
    
    
    // OnBeforePageExecute event handler
    
    
    
    class vues_vm_association_objetsDetailView2vues_vm_objet_vue_de_basePage extends DetailPage
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_association_objets"');
            $field = new IntegerField('fk_type_association_param');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('reference_precise_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('libelle_original_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('valeur_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_qualificatif_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_role_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_unite_de_mesure');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('descriptif');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('pk_association_objets');
            $this->dataset->AddField($field, true);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_qualificatif_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_qualificatif_objet_source_nom', 'fk_qualificatif_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_qualificatif_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_role_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_role_objet_source_nom', 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_unite_de_mesure', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_unite_de_mesure_nom', 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base'), 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_type_association_param', 'vues.vn_types_associations_entre_objets', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_association_param_valeur', 'fk_type_association_param_valeur_vues_vn_types_associations_entre_objets'), 'fk_type_association_param_valeur_vues_vn_types_associations_entre_objets');
            $this->dataset->AddLookupField('fk_objet_cible', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_objet_cible_nom', 'fk_objet_cible_nom_vues_vm_objet_vue_de_base'), 'fk_objet_cible_nom_vues_vm_objet_vue_de_base');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source_nom', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(false);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_cible_nom', 'Fk Objet Cible', $this->dataset);
            $column->SetOrderable(false);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_cible%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_objet_cible field
            //
            $column = new TextViewColumn('date_objet_cible', 'Date Objet Cible', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_descriptif_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
        
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->AddFieldColumns($result);
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_descriptif_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailViewGrid2vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
    }
    
    
    
    // OnBeforePageExecute event handler
    
    
    
    class vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_basePage extends DetailPageEdit
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_association_objets"');
            $field = new IntegerField('fk_type_association_param');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('reference_precise_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('libelle_original_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('valeur_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_qualificatif_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_role_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_unite_de_mesure');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('descriptif');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('pk_association_objets');
            $this->dataset->AddField($field, true);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_qualificatif_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_qualificatif_objet_source_nom', 'fk_qualificatif_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_qualificatif_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_role_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_role_objet_source_nom', 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_unite_de_mesure', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_unite_de_mesure_nom', 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base'), 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_type_association_param', 'vues.vn_types_associations_entre_objets', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_association_param_valeur', 'fk_type_association_param_valeur_vues_vn_types_associations_entre_objets'), 'fk_type_association_param_valeur_vues_vn_types_associations_entre_objets');
            $this->dataset->AddLookupField('fk_objet_cible', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_objet_cible_nom', 'fk_objet_cible_nom_vues_vm_objet_vue_de_base'), 'fk_objet_cible_nom_vues_vm_objet_vue_de_base');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function CreatePageNavigator()
        {
            $result = new CompositePageNavigator($this);
            
            $partitionNavigator = new PageNavigator('pnav', $this, $this->dataset);
            $partitionNavigator->SetRowsPerPage(20);
            $result->AddPageNavigator($partitionNavigator);
            
            return $result;
        }
    
        protected function CreateRssGenerator()
        {
            return null;
        }
    
        protected function CreateGridSearchControl(Grid $grid)
        {
            $grid->UseFilter = true;
            $grid->SearchControl = new SimpleSearch('vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_basessearch', $this->dataset,
                array('reference_precise_objet_source', 'libelle_original_objet_source', 'fk_qualificatif_objet_source_nom', 'fk_role_objet_source_nom', 'valeur_objet_source', 'fk_unite_de_mesure_nom', 'fk_type_association_param_valeur', 'fk_objet_cible_nom', 'date_objet_cible', 'descriptif', 'notes', 'pk_association_objets'),
                array($this->RenderText('Reference Precise Objet Source'), $this->RenderText('Libelle Original Objet Source'), $this->RenderText('Fk Qualificatif Objet Source'), $this->RenderText('Fk Role Objet Source'), $this->RenderText('Valeur Objet Source'), $this->RenderText('Fk Unite De Mesure'), $this->RenderText('Fk Type Association Param'), $this->RenderText('Fk Objet Cible'), $this->RenderText('Date Objet Cible'), $this->RenderText('Descriptif'), $this->RenderText('Notes'), $this->RenderText('Pk Association Objets')),
                array(
                    '=' => $this->GetLocalizerCaptions()->GetMessageString('equals'),
                    '<>' => $this->GetLocalizerCaptions()->GetMessageString('doesNotEquals'),
                    '<' => $this->GetLocalizerCaptions()->GetMessageString('isLessThan'),
                    '<=' => $this->GetLocalizerCaptions()->GetMessageString('isLessThanOrEqualsTo'),
                    '>' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThan'),
                    '>=' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThanOrEqualsTo'),
                    'ILIKE' => $this->GetLocalizerCaptions()->GetMessageString('Like'),
                    'STARTS' => $this->GetLocalizerCaptions()->GetMessageString('StartsWith'),
                    'ENDS' => $this->GetLocalizerCaptions()->GetMessageString('EndsWith'),
                    'CONTAINS' => $this->GetLocalizerCaptions()->GetMessageString('Contains')
                    ), $this->GetLocalizerCaptions(), $this, 'CONTAINS'
                );
        }
    
        protected function CreateGridAdvancedSearchControl(Grid $grid)
        {
            $this->AdvancedSearchControl = new AdvancedSearchControl('vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_baseasearch', $this->dataset, $this->GetLocalizerCaptions(), $this->GetColumnVariableContainer(), $this->CreateLinkBuilder());
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('reference_precise_objet_source', $this->RenderText('Reference Precise Objet Source')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('libelle_original_objet_source', $this->RenderText('Libelle Original Objet Source')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_qualificatif_objet_source', $this->RenderText('Fk Qualificatif Objet Source'), $lookupDataset, 'pk_objet', 'nom', false, 8));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 38'));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_role_objet_source', $this->RenderText('Fk Role Objet Source'), $lookupDataset, 'pk_objet', 'nom', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('valeur_objet_source', $this->RenderText('Valeur Objet Source')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 43'));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_unite_de_mesure', $this->RenderText('Fk Unite De Mesure'), $lookupDataset, 'pk_objet', 'nom', false, 8));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_associations_entre_objets"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_type_association_param', $this->RenderText('Fk Type Association Param'), $lookupDataset, 'pk_parametre_systeme', 'valeur', false, 8));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_objet_cible', $this->RenderText('Fk Objet Cible'), $lookupDataset, 'pk_objet', 'nom', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('date_objet_cible', $this->RenderText('Date Objet Cible')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('descriptif', $this->RenderText('Descriptif')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('notes', $this->RenderText('Notes')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('pk_association_objets', $this->RenderText('Pk Association Objets')));
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function AddOperationsColumns(Grid $grid)
        {
            $actions = $grid->getActions();
            $actions->setCaption($this->GetLocalizerCaptions()->GetMessageString('Actions'));
            $actions->setPosition(ActionList::POSITION_LEFT);
            if ($this->GetSecurityInfo()->HasEditGrant())
            {
                $operation = new ModalEditOperation(
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'),
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'), $this->dataset,
                    $this->GetModalGridEditingHandler(), $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowEditButtonHandler', $this);
            }
            if ($this->GetSecurityInfo()->HasDeleteGrant())
            {
                $operation = new LinkOperation($this->GetLocalizerCaptions()->GetMessageString('Delete'), OPERATION_DELETE, $this->dataset, $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowDeleteButtonHandler', $this);
                $operation->SetAdditionalAttribute('data-modal-operation', 'delete');
                $operation->SetAdditionalAttribute('data-delete-handler-name', $this->GetModalGridDeleteHandler());
            }
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source_nom', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_cible_nom', 'Fk Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_cible%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_objet_cible field
            //
            $column = new TextViewColumn('date_objet_cible', 'Date Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_descriptif_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
    
        protected function AddSingleRecordViewColumns(Grid $grid)
        {
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source_nom', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_cible_nom', 'Fk Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_cible%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for date_objet_cible field
            //
            $column = new TextViewColumn('date_objet_cible', 'Date Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_descriptif_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_notes_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
        }
    
        protected function AddEditColumns(Grid $grid)
        {
            //
            // Edit column for reference_precise_objet_source field
            //
            $editor = new TextAreaEdit('reference_precise_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Reference Precise Objet Source', 'reference_precise_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for libelle_original_objet_source field
            //
            $editor = new TextAreaEdit('libelle_original_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Libelle Original Objet Source', 'libelle_original_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_qualificatif_objet_source field
            //
            $editor = new ComboBox('fk_qualificatif_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Qualificatif Objet Source', 
                'fk_qualificatif_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_role_objet_source field
            //
            $editor = new ComboBox('fk_role_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 38'));
            $editColumn = new LookUpEditColumn(
                'Fk Role Objet Source', 
                'fk_role_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for valeur_objet_source field
            //
            $editor = new TextEdit('valeur_objet_source_edit');
            $editColumn = new CustomEditColumn('Valeur Objet Source', 'valeur_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_unite_de_mesure field
            //
            $editor = new ComboBox('fk_unite_de_mesure_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 43'));
            $editColumn = new LookUpEditColumn(
                'Fk Unite De Mesure', 
                'fk_unite_de_mesure', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_type_association_param field
            //
            $editor = new ComboBox('fk_type_association_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_associations_entre_objets"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Association Param', 
                'fk_type_association_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_objet_cible field
            //
            $editor = new ComboBox('fk_objet_cible_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Objet Cible', 
                'fk_objet_cible', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for date_objet_cible field
            //
            $editor = new TextEdit('date_objet_cible_edit');
            $editColumn = new CustomEditColumn('Date Objet Cible', 'date_objet_cible', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for descriptif field
            //
            $editor = new TextAreaEdit('descriptif_edit', 50, 8);
            $editColumn = new CustomEditColumn('Descriptif', 'descriptif', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for pk_association_objets field
            //
            $editor = new TextEdit('pk_association_objets_edit');
            $editColumn = new CustomEditColumn('Pk Association Objets', 'pk_association_objets', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
        }
    
        protected function AddInsertColumns(Grid $grid)
        {
            //
            // Edit column for reference_precise_objet_source field
            //
            $editor = new TextAreaEdit('reference_precise_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Reference Precise Objet Source', 'reference_precise_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for libelle_original_objet_source field
            //
            $editor = new TextAreaEdit('libelle_original_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Libelle Original Objet Source', 'libelle_original_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_qualificatif_objet_source field
            //
            $editor = new ComboBox('fk_qualificatif_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Qualificatif Objet Source', 
                'fk_qualificatif_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_role_objet_source field
            //
            $editor = new ComboBox('fk_role_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 38'));
            $editColumn = new LookUpEditColumn(
                'Fk Role Objet Source', 
                'fk_role_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for valeur_objet_source field
            //
            $editor = new TextEdit('valeur_objet_source_edit');
            $editColumn = new CustomEditColumn('Valeur Objet Source', 'valeur_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_unite_de_mesure field
            //
            $editor = new ComboBox('fk_unite_de_mesure_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 43'));
            $editColumn = new LookUpEditColumn(
                'Fk Unite De Mesure', 
                'fk_unite_de_mesure', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_type_association_param field
            //
            $editor = new ComboBox('fk_type_association_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_associations_entre_objets"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Association Param', 
                'fk_type_association_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_objet_cible field
            //
            $editor = new ComboBox('fk_objet_cible_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Objet Cible', 
                'fk_objet_cible', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for date_objet_cible field
            //
            $editor = new TextEdit('date_objet_cible_edit');
            $editColumn = new CustomEditColumn('Date Objet Cible', 'date_objet_cible', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for descriptif field
            //
            $editor = new TextAreaEdit('descriptif_edit', 50, 8);
            $editColumn = new CustomEditColumn('Descriptif', 'descriptif', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for pk_association_objets field
            //
            $editor = new TextEdit('pk_association_objets_edit');
            $editColumn = new CustomEditColumn('Pk Association Objets', 'pk_association_objets', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $grid->SetShowAddButton(true);
                $grid->SetShowInlineAddButton(false);
            }
            else
            {
                $grid->SetShowInlineAddButton(false);
                $grid->SetShowAddButton(false);
            }
        }
    
        protected function AddPrintColumns(Grid $grid)
        {
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source_nom', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddPrintColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddPrintColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_cible_nom', 'Fk Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_cible%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddPrintColumn($column);
            
            //
            // View column for date_objet_cible field
            //
            $column = new TextViewColumn('date_objet_cible', 'Date Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
        }
    
        protected function AddExportColumns(Grid $grid)
        {
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source_nom', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddExportColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddExportColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_cible_nom', 'Fk Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_cible%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddExportColumn($column);
            
            //
            // View column for date_objet_cible field
            //
            $column = new TextViewColumn('date_objet_cible', 'Date Objet Cible', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        	$column->SetVariableContainer($this->GetColumnVariableContainer());
        }
    
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
        public function GetModalGridEditingHandler() { return 'vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_base_inline_edit'; }
        protected function GetEnableModalGridEditing() { return true; }
        public function ShowEditButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasEditGrant($this->GetDataset());
        }
        public function ShowDeleteButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasDeleteGrant($this->GetDataset());
        }
        
        public function GetModalGridDeleteHandler() { return 'vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_base_modal_delete'; }
        protected function GetEnableModalGridDelete() { return true; }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base');
            if ($this->GetSecurityInfo()->HasDeleteGrant())
                $result->SetAllowDeleteSelected(false);
            else
                $result->SetAllowDeleteSelected(false);
            ApplyCommonPageSettings($this, $result);
            $result->SetUseImagesForActions(true);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            $result->SetUseModalInserting(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->CreateGridSearchControl($result);
            $this->CreateGridAdvancedSearchControl($result);
            $this->AddOperationsColumns($result);
            $this->AddFieldColumns($result);
            $this->AddSingleRecordViewColumns($result);
            $this->AddEditColumns($result);
            $this->AddInsertColumns($result);
            $this->AddPrintColumns($result);
            $this->AddExportColumns($result);
    
            $this->SetShowPageList(true);
            $this->SetExportToExcelAvailable(true);
            $this->SetExportToWordAvailable(true);
            $this->SetExportToXmlAvailable(true);
            $this->SetExportToCsvAvailable(true);
            $this->SetExportToPdfAvailable(true);
            $this->SetPrinterFriendlyAvailable(true);
            $this->SetSimpleSearchAvailable(true);
            $this->SetAdvancedSearchAvailable(false);
            $this->SetVisualEffectsEnabled(true);
            $this->SetShowTopPageNavigator(true);
            $this->SetShowBottomPageNavigator(true);
    
            //
            // Http Handlers
            //
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_descriptif_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);//
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_descriptif_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objetsDetailEditGrid2vues_vm_objet_vue_de_base_notes_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
        
        public function OpenAdvancedSearchByDefault()
        {
            return false;
        }
    
        protected function DoGetGridHeader()
        {
            return '';
        }    
    }
    
    
    
    // OnBeforePageExecute event handler
    
    
    
    class vues_vm_association_objets_invDetailView3vues_vm_objet_vue_de_basePage extends DetailPage
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_association_objets_inv"');
            $field = new IntegerField('fk_type_association_param');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('reference_precise_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('libelle_original_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('valeur_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_qualificatif_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_role_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_unite_de_mesure');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('descriptif');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('pk_association_objets');
            $this->dataset->AddField($field, true);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_type_association_param', 'vues.vn_types_associations_inverses_entre_objets', new IntegerField('pk_parametre_systeme'), new StringField('valeur_inverse', 'fk_type_association_param_valeur_inverse', 'fk_type_association_param_valeur_inverse_vues_vn_types_associations_inverses_entre_objets'), 'fk_type_association_param_valeur_inverse_vues_vn_types_associations_inverses_entre_objets');
            $this->dataset->AddLookupField('fk_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_objet_source_nom', 'fk_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_role_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_role_objet_source_nom', 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_unite_de_mesure', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_unite_de_mesure_nom', 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base'), 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for valeur_inverse field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur_inverse', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(false);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_source_nom', 'Fk Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_source%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_objet_source field
            //
            $column = new TextViewColumn('date_objet_source', 'Date Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for fk_qualificatif_objet_source field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_descriptif_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(false);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
        
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->AddFieldColumns($result);
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_descriptif_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(false);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailViewGrid3vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
    }
    
    
    
    // OnBeforePageExecute event handler
    
    
    
    class vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_basePage extends DetailPageEdit
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_association_objets_inv"');
            $field = new IntegerField('fk_type_association_param');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('reference_precise_objet_source');
            $this->dataset->AddField($field, false);
            $field = new StringField('libelle_original_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('valeur_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_qualificatif_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_role_objet_source');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_unite_de_mesure');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_objet_cible');
            $this->dataset->AddField($field, false);
            $field = new StringField('descriptif');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('pk_association_objets');
            $this->dataset->AddField($field, true);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_type_association_param', 'vues.vn_types_associations_inverses_entre_objets', new IntegerField('pk_parametre_systeme'), new StringField('valeur_inverse', 'fk_type_association_param_valeur_inverse', 'fk_type_association_param_valeur_inverse_vues_vn_types_associations_inverses_entre_objets'), 'fk_type_association_param_valeur_inverse_vues_vn_types_associations_inverses_entre_objets');
            $this->dataset->AddLookupField('fk_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_objet_source_nom', 'fk_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_role_objet_source', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_role_objet_source_nom', 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base'), 'fk_role_objet_source_nom_vues_vm_objet_vue_de_base');
            $this->dataset->AddLookupField('fk_unite_de_mesure', 'vues.vm_objet_vue_de_base', new IntegerField('pk_objet'), new StringField('nom', 'fk_unite_de_mesure_nom', 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base'), 'fk_unite_de_mesure_nom_vues_vm_objet_vue_de_base');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function CreatePageNavigator()
        {
            $result = new CompositePageNavigator($this);
            
            $partitionNavigator = new PageNavigator('pnav', $this, $this->dataset);
            $partitionNavigator->SetRowsPerPage(20);
            $result->AddPageNavigator($partitionNavigator);
            
            return $result;
        }
    
        protected function CreateRssGenerator()
        {
            return null;
        }
    
        protected function CreateGridSearchControl(Grid $grid)
        {
            $grid->UseFilter = true;
            $grid->SearchControl = new SimpleSearch('vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_basessearch', $this->dataset,
                array('fk_type_association_param_valeur_inverse', 'fk_objet_source_nom', 'date_objet_source', 'reference_precise_objet_source', 'libelle_original_objet_source', 'valeur_objet_source', 'fk_qualificatif_objet_source', 'fk_role_objet_source_nom', 'fk_unite_de_mesure_nom', 'descriptif', 'notes', 'pk_association_objets'),
                array($this->RenderText('Fk Type Association Param'), $this->RenderText('Fk Objet Source'), $this->RenderText('Date Objet Source'), $this->RenderText('Reference Precise Objet Source'), $this->RenderText('Libelle Original Objet Source'), $this->RenderText('Valeur Objet Source'), $this->RenderText('Fk Qualificatif Objet Source'), $this->RenderText('Fk Role Objet Source'), $this->RenderText('Fk Unite De Mesure'), $this->RenderText('Descriptif'), $this->RenderText('Notes'), $this->RenderText('Pk Association Objets')),
                array(
                    '=' => $this->GetLocalizerCaptions()->GetMessageString('equals'),
                    '<>' => $this->GetLocalizerCaptions()->GetMessageString('doesNotEquals'),
                    '<' => $this->GetLocalizerCaptions()->GetMessageString('isLessThan'),
                    '<=' => $this->GetLocalizerCaptions()->GetMessageString('isLessThanOrEqualsTo'),
                    '>' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThan'),
                    '>=' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThanOrEqualsTo'),
                    'ILIKE' => $this->GetLocalizerCaptions()->GetMessageString('Like'),
                    'STARTS' => $this->GetLocalizerCaptions()->GetMessageString('StartsWith'),
                    'ENDS' => $this->GetLocalizerCaptions()->GetMessageString('EndsWith'),
                    'CONTAINS' => $this->GetLocalizerCaptions()->GetMessageString('Contains')
                    ), $this->GetLocalizerCaptions(), $this, 'CONTAINS'
                );
        }
    
        protected function CreateGridAdvancedSearchControl(Grid $grid)
        {
            $this->AdvancedSearchControl = new AdvancedSearchControl('vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_baseasearch', $this->dataset, $this->GetLocalizerCaptions(), $this->GetColumnVariableContainer(), $this->CreateLinkBuilder());
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_associations_inverses_entre_objets"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur_inverse');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur_inverse', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_type_association_param', $this->RenderText('Fk Type Association Param'), $lookupDataset, 'pk_parametre_systeme', 'valeur_inverse', false, 8));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_objet_source', $this->RenderText('Fk Objet Source'), $lookupDataset, 'pk_objet', 'nom', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('date_objet_source', $this->RenderText('Date Objet Source')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('reference_precise_objet_source', $this->RenderText('Reference Precise Objet Source')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('libelle_original_objet_source', $this->RenderText('Libelle Original Objet Source')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('valeur_objet_source', $this->RenderText('Valeur Objet Source')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('fk_qualificatif_objet_source', $this->RenderText('Fk Qualificatif Objet Source')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 38'));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_role_objet_source', $this->RenderText('Fk Role Objet Source'), $lookupDataset, 'pk_objet', 'nom', false, 8));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 43'));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_unite_de_mesure', $this->RenderText('Fk Unite De Mesure'), $lookupDataset, 'pk_objet', 'nom', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('descriptif', $this->RenderText('Descriptif')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('notes', $this->RenderText('Notes')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('pk_association_objets', $this->RenderText('Pk Association Objets')));
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function AddOperationsColumns(Grid $grid)
        {
            $actions = $grid->getActions();
            $actions->setCaption($this->GetLocalizerCaptions()->GetMessageString('Actions'));
            $actions->setPosition(ActionList::POSITION_LEFT);
            if ($this->GetSecurityInfo()->HasEditGrant())
            {
                $operation = new ModalEditOperation(
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'),
                    $this->GetLocalizerCaptions()->GetMessageString('Edit'), $this->dataset,
                    $this->GetModalGridEditingHandler(), $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowEditButtonHandler', $this);
            }
            if ($this->GetSecurityInfo()->HasDeleteGrant())
            {
                $operation = new LinkOperation($this->GetLocalizerCaptions()->GetMessageString('Delete'), OPERATION_DELETE, $this->dataset, $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowDeleteButtonHandler', $this);
                $operation->SetAdditionalAttribute('data-modal-operation', 'delete');
                $operation->SetAdditionalAttribute('data-delete-handler-name', $this->GetModalGridDeleteHandler());
            }
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            //
            // View column for valeur_inverse field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur_inverse', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_source_nom', 'Fk Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_source%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_objet_source field
            //
            $column = new TextViewColumn('date_objet_source', 'Date Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for fk_qualificatif_objet_source field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_descriptif_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
    
        protected function AddSingleRecordViewColumns(Grid $grid)
        {
            //
            // View column for valeur_inverse field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur_inverse', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_source_nom', 'Fk Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_source%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for date_objet_source field
            //
            $column = new TextViewColumn('date_objet_source', 'Date Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for fk_qualificatif_objet_source field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_descriptif_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_notes_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
        }
    
        protected function AddEditColumns(Grid $grid)
        {
            //
            // Edit column for fk_type_association_param field
            //
            $editor = new ComboBox('fk_type_association_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_associations_inverses_entre_objets"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur_inverse');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur_inverse', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Association Param', 
                'fk_type_association_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur_inverse', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_objet_source field
            //
            $editor = new ComboBox('fk_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Objet Source', 
                'fk_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for date_objet_source field
            //
            $editor = new TextEdit('date_objet_source_edit');
            $editColumn = new CustomEditColumn('Date Objet Source', 'date_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for reference_precise_objet_source field
            //
            $editor = new TextAreaEdit('reference_precise_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Reference Precise Objet Source', 'reference_precise_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for libelle_original_objet_source field
            //
            $editor = new TextAreaEdit('libelle_original_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Libelle Original Objet Source', 'libelle_original_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for valeur_objet_source field
            //
            $editor = new TextEdit('valeur_objet_source_edit');
            $editColumn = new CustomEditColumn('Valeur Objet Source', 'valeur_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_qualificatif_objet_source field
            //
            $editor = new TextEdit('fk_qualificatif_objet_source_edit');
            $editColumn = new CustomEditColumn('Fk Qualificatif Objet Source', 'fk_qualificatif_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_role_objet_source field
            //
            $editor = new ComboBox('fk_role_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 38'));
            $editColumn = new LookUpEditColumn(
                'Fk Role Objet Source', 
                'fk_role_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_unite_de_mesure field
            //
            $editor = new ComboBox('fk_unite_de_mesure_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 43'));
            $editColumn = new LookUpEditColumn(
                'Fk Unite De Mesure', 
                'fk_unite_de_mesure', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for descriptif field
            //
            $editor = new TextAreaEdit('descriptif_edit', 50, 8);
            $editColumn = new CustomEditColumn('Descriptif', 'descriptif', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for pk_association_objets field
            //
            $editor = new TextEdit('pk_association_objets_edit');
            $editColumn = new CustomEditColumn('Pk Association Objets', 'pk_association_objets', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
        }
    
        protected function AddInsertColumns(Grid $grid)
        {
            //
            // Edit column for fk_type_association_param field
            //
            $editor = new ComboBox('fk_type_association_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_associations_inverses_entre_objets"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur_inverse');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur_inverse', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Association Param', 
                'fk_type_association_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur_inverse', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_objet_source field
            //
            $editor = new ComboBox('fk_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Objet Source', 
                'fk_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for date_objet_source field
            //
            $editor = new TextEdit('date_objet_source_edit');
            $editColumn = new CustomEditColumn('Date Objet Source', 'date_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for reference_precise_objet_source field
            //
            $editor = new TextAreaEdit('reference_precise_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Reference Precise Objet Source', 'reference_precise_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for libelle_original_objet_source field
            //
            $editor = new TextAreaEdit('libelle_original_objet_source_edit', 50, 8);
            $editColumn = new CustomEditColumn('Libelle Original Objet Source', 'libelle_original_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for valeur_objet_source field
            //
            $editor = new TextEdit('valeur_objet_source_edit');
            $editColumn = new CustomEditColumn('Valeur Objet Source', 'valeur_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_qualificatif_objet_source field
            //
            $editor = new TextEdit('fk_qualificatif_objet_source_edit');
            $editColumn = new CustomEditColumn('Fk Qualificatif Objet Source', 'fk_qualificatif_objet_source', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_role_objet_source field
            //
            $editor = new ComboBox('fk_role_objet_source_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 38'));
            $editColumn = new LookUpEditColumn(
                'Fk Role Objet Source', 
                'fk_role_objet_source', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_unite_de_mesure field
            //
            $editor = new ComboBox('fk_unite_de_mesure_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $lookupDataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('nom');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('definition');
            $lookupDataset->AddField($field, false);
            $field = new StringField('date_iso');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $lookupDataset->AddField($field, false);
            $field = new StringField('certitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $lookupDataset->AddField($field, false);
            $field = new StringField('genre');
            $lookupDataset->AddField($field, false);
            $field = new StringField('notes');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte');
            $lookupDataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $lookupDataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $lookupDataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('nom', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), 'fk_type_objet_param = 43'));
            $editColumn = new LookUpEditColumn(
                'Fk Unite De Mesure', 
                'fk_unite_de_mesure', 
                $editor, 
                $this->dataset, 'pk_objet', 'nom', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for descriptif field
            //
            $editor = new TextAreaEdit('descriptif_edit', 50, 8);
            $editColumn = new CustomEditColumn('Descriptif', 'descriptif', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for pk_association_objets field
            //
            $editor = new TextEdit('pk_association_objets_edit');
            $editColumn = new CustomEditColumn('Pk Association Objets', 'pk_association_objets', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $grid->SetShowAddButton(true);
                $grid->SetShowInlineAddButton(false);
            }
            else
            {
                $grid->SetShowInlineAddButton(false);
                $grid->SetShowAddButton(false);
            }
        }
    
        protected function AddPrintColumns(Grid $grid)
        {
            //
            // View column for valeur_inverse field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur_inverse', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddPrintColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_source_nom', 'Fk Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_source%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddPrintColumn($column);
            
            //
            // View column for date_objet_source field
            //
            $column = new TextViewColumn('date_objet_source', 'Date Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddPrintColumn($column);
            
            //
            // View column for fk_qualificatif_objet_source field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
        }
    
        protected function AddExportColumns(Grid $grid)
        {
            //
            // View column for valeur_inverse field
            //
            $column = new TextViewColumn('fk_type_association_param_valeur_inverse', 'Fk Type Association Param', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddExportColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_objet_source_nom', 'Fk Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?hname=objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler&fk0=%fk_objet_source%' , '_blank');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $grid->AddExportColumn($column);
            
            //
            // View column for date_objet_source field
            //
            $column = new TextViewColumn('date_objet_source', 'Date Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur_objet_source field
            //
            $column = new TextViewColumn('valeur_objet_source', 'Valeur Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddExportColumn($column);
            
            //
            // View column for fk_qualificatif_objet_source field
            //
            $column = new TextViewColumn('fk_qualificatif_objet_source', 'Fk Qualificatif Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_role_objet_source_nom', 'Fk Role Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('fk_unite_de_mesure_nom', 'Fk Unite De Mesure', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for pk_association_objets field
            //
            $column = new TextViewColumn('pk_association_objets', 'Pk Association Objets', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
        	$column->SetVariableContainer($this->GetColumnVariableContainer());
        }
    
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
        public function GetModalGridEditingHandler() { return 'vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_base_inline_edit'; }
        protected function GetEnableModalGridEditing() { return true; }
        public function ShowEditButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasEditGrant($this->GetDataset());
        }
        public function ShowDeleteButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasDeleteGrant($this->GetDataset());
        }
        
        public function GetModalGridDeleteHandler() { return 'vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_base_modal_delete'; }
        protected function GetEnableModalGridDelete() { return true; }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base');
            if ($this->GetSecurityInfo()->HasDeleteGrant())
                $result->SetAllowDeleteSelected(false);
            else
                $result->SetAllowDeleteSelected(false);
            ApplyCommonPageSettings($this, $result);
            $result->SetUseImagesForActions(true);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            $result->SetUseModalInserting(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->CreateGridSearchControl($result);
            $this->CreateGridAdvancedSearchControl($result);
            $this->AddOperationsColumns($result);
            $this->AddFieldColumns($result);
            $this->AddSingleRecordViewColumns($result);
            $this->AddEditColumns($result);
            $this->AddInsertColumns($result);
            $this->AddPrintColumns($result);
            $this->AddExportColumns($result);
    
            $this->SetShowPageList(true);
            $this->SetExportToExcelAvailable(true);
            $this->SetExportToWordAvailable(true);
            $this->SetExportToXmlAvailable(true);
            $this->SetExportToCsvAvailable(true);
            $this->SetExportToPdfAvailable(true);
            $this->SetPrinterFriendlyAvailable(true);
            $this->SetSimpleSearchAvailable(true);
            $this->SetAdvancedSearchAvailable(false);
            $this->SetVisualEffectsEnabled(true);
            $this->SetShowTopPageNavigator(true);
            $this->SetShowBottomPageNavigator(true);
    
            //
            // Http Handlers
            //
            //
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_descriptif_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);//
            // View column for reference_precise_objet_source field
            //
            $column = new TextViewColumn('reference_precise_objet_source', 'Reference Precise Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_reference_precise_objet_source_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for libelle_original_objet_source field
            //
            $column = new TextViewColumn('libelle_original_objet_source', 'Libelle Original Objet Source', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_libelle_original_objet_source_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for descriptif field
            //
            $column = new TextViewColumn('descriptif', 'Descriptif', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_descriptif_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_association_objets_invDetailEditGrid3vues_vm_objet_vue_de_base_notes_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
        
        public function OpenAdvancedSearchByDefault()
        {
            return false;
        }
    
        protected function DoGetGridHeader()
        {
            return '';
        }    
    }
    // OnGlobalBeforePageExecute event handler
    
    
    // OnBeforePageExecute event handler
    
    
    
    class vues_vm_objet_vue_de_basePage extends Page
    {
        protected function DoBeforeCreate()
        {
            $this->dataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vm_objet_vue_de_base"');
            $field = new IntegerField('pk_objet');
            $this->dataset->AddField($field, true);
            $field = new IntegerField('fk_type_objet_param');
            $this->dataset->AddField($field, false);
            $field = new StringField('nom');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_type_nom_param');
            $this->dataset->AddField($field, false);
            $field = new StringField('definition');
            $this->dataset->AddField($field, false);
            $field = new StringField('date_iso');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('fk_type_date_param');
            $this->dataset->AddField($field, false);
            $field = new StringField('certitude');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('latitude');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('longitude');
            $this->dataset->AddField($field, false);
            $field = new StringField('genre');
            $this->dataset->AddField($field, false);
            $field = new StringField('notes');
            $this->dataset->AddField($field, false);
            $field = new StringField('texte');
            $this->dataset->AddField($field, false);
            $field = new StringField('texte_xml');
            $this->dataset->AddField($field, false);
            $field = new BooleanField('si_texte_xml');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_creation');
            $this->dataset->AddField($field, false);
            $field = new DateTimeField('date_modification');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('pk_nom_objet');
            $this->dataset->AddField($field, false);
            $field = new IntegerField('pk_date_objet');
            $this->dataset->AddField($field, false);
            $this->dataset->AddLookupField('fk_type_objet_param', 'vues.vn_types_objet', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_objet_param_valeur', 'fk_type_objet_param_valeur_vues_vn_types_objet'), 'fk_type_objet_param_valeur_vues_vn_types_objet');
            $this->dataset->AddLookupField('fk_type_date_param', 'vues.vn_types_date', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_date_param_valeur', 'fk_type_date_param_valeur_vues_vn_types_date'), 'fk_type_date_param_valeur_vues_vn_types_date');
            $this->dataset->AddLookupField('certitude', 'vues.vn_valeurs_type_certitude_date', new StringField('valeur'), new StringField('valeur', 'certitude_valeur', 'certitude_valeur_vues_vn_valeurs_type_certitude_date'), 'certitude_valeur_vues_vn_valeurs_type_certitude_date');
            $this->dataset->AddLookupField('genre', 'vues.vn_valeurs_genre', new StringField('valeur'), new StringField('valeur', 'genre_valeur', 'genre_valeur_vues_vn_valeurs_genre'), 'genre_valeur_vues_vn_valeurs_genre');
            $this->dataset->AddLookupField('fk_type_nom_param', 'vues.vn_types_nom_objet', new IntegerField('pk_parametre_systeme'), new StringField('valeur', 'fk_type_nom_param_valeur', 'fk_type_nom_param_valeur_vues_vn_types_nom_objet'), 'fk_type_nom_param_valeur_vues_vn_types_nom_objet');
        }
    
        protected function DoPrepare() {
    
        }
    
        protected function CreatePageNavigator()
        {
            $result = new CompositePageNavigator($this);
            
            $partitionNavigator = new PageNavigator('pnav', $this, $this->dataset);
            $partitionNavigator->SetRowsPerPage(20);
            $result->AddPageNavigator($partitionNavigator);
            
            return $result;
        }
    
        protected function CreateRssGenerator()
        {
            return null;
        }
    
        protected function CreateGridSearchControl(Grid $grid)
        {
            $grid->UseFilter = true;
            $grid->SearchControl = new SimpleSearch('vues_vm_objet_vue_de_basessearch', $this->dataset,
                array('nom', 'fk_type_objet_param_valeur', 'pk_objet', 'fk_type_nom_param_valeur', 'definition', 'date_iso', 'fk_type_date_param_valeur', 'certitude_valeur', 'latitude', 'longitude', 'genre_valeur', 'texte', 'date_creation', 'date_modification', 'pk_nom_objet', 'pk_date_objet', 'notes'),
                array($this->RenderText('Nom'), $this->RenderText('Fk Type Objet Param'), $this->RenderText('Pk Objet'), $this->RenderText('Fk Type Nom Param'), $this->RenderText('Definition'), $this->RenderText('Date Iso'), $this->RenderText('Fk Type Date Param'), $this->RenderText('Certitude'), $this->RenderText('Latitude'), $this->RenderText('Longitude'), $this->RenderText('Genre'), $this->RenderText('Texte'), $this->RenderText('Date Creation'), $this->RenderText('Date Modification'), $this->RenderText('Pk Nom Objet'), $this->RenderText('Pk Date Objet'), $this->RenderText('Notes')),
                array(
                    '=' => $this->GetLocalizerCaptions()->GetMessageString('equals'),
                    '<>' => $this->GetLocalizerCaptions()->GetMessageString('doesNotEquals'),
                    '<' => $this->GetLocalizerCaptions()->GetMessageString('isLessThan'),
                    '<=' => $this->GetLocalizerCaptions()->GetMessageString('isLessThanOrEqualsTo'),
                    '>' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThan'),
                    '>=' => $this->GetLocalizerCaptions()->GetMessageString('isGreaterThanOrEqualsTo'),
                    'ILIKE' => $this->GetLocalizerCaptions()->GetMessageString('Like'),
                    'STARTS' => $this->GetLocalizerCaptions()->GetMessageString('StartsWith'),
                    'ENDS' => $this->GetLocalizerCaptions()->GetMessageString('EndsWith'),
                    'CONTAINS' => $this->GetLocalizerCaptions()->GetMessageString('Contains')
                    ), $this->GetLocalizerCaptions(), $this, 'CONTAINS'
                );
        }
    
        protected function CreateGridAdvancedSearchControl(Grid $grid)
        {
            $this->AdvancedSearchControl = new AdvancedSearchControl('vues_vm_objet_vue_de_baseasearch', $this->dataset, $this->GetLocalizerCaptions(), $this->GetColumnVariableContainer(), $this->CreateLinkBuilder());
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('nom', $this->RenderText('Nom')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_type_objet_param', $this->RenderText('Fk Type Objet Param'), $lookupDataset, 'pk_parametre_systeme', 'valeur', false, 26));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('pk_objet', $this->RenderText('Pk Objet')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_nom_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_type_nom_param', $this->RenderText('Fk Type Nom Param'), $lookupDataset, 'pk_parametre_systeme', 'valeur', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('definition', $this->RenderText('Definition')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('date_iso', $this->RenderText('Date Iso')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('fk_type_date_param', $this->RenderText('Fk Type Date Param'), $lookupDataset, 'pk_parametre_systeme', 'valeur', false, 8));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_valeurs_type_certitude_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('certitude', $this->RenderText('Certitude'), $lookupDataset, 'valeur', 'valeur', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('latitude', $this->RenderText('Latitude')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('longitude', $this->RenderText('Longitude')));
            
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_valeurs_genre"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateLookupSearchInput('genre', $this->RenderText('Genre'), $lookupDataset, 'valeur', 'valeur', false, 8));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('texte', $this->RenderText('Texte')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateDateTimeSearchInput('date_creation', $this->RenderText('Date Creation'), 'Y-m-d H:i:s'));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateDateTimeSearchInput('date_modification', $this->RenderText('Date Modification'), 'Y-m-d H:i:s'));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('pk_nom_objet', $this->RenderText('Pk Nom Objet')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('pk_date_objet', $this->RenderText('Pk Date Objet')));
            $this->AdvancedSearchControl->AddSearchColumn($this->AdvancedSearchControl->CreateStringSearchInput('notes', $this->RenderText('Notes')));
        }
    
        protected function AddOperationsColumns(Grid $grid)
        {
            $actions = $grid->getActions();
            $actions->setCaption($this->GetLocalizerCaptions()->GetMessageString('Actions'));
            $actions->setPosition(ActionList::POSITION_LEFT);
            if ($this->GetSecurityInfo()->HasEditGrant())
            {
                $operation = new LinkOperation($this->GetLocalizerCaptions()->GetMessageString('Edit'), OPERATION_EDIT, $this->dataset, $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
                $operation->OnShow->AddListener('ShowEditButtonHandler', $this);
            }
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $operation = new LinkOperation($this->GetLocalizerCaptions()->GetMessageString('Copy'), OPERATION_COPY, $this->dataset, $grid);
                $operation->setUseImage(true);
                $actions->addOperation($operation);
            }
        }
    
        protected function AddFieldColumns(Grid $grid)
        {
            if (GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.objets.date_objet')->HasViewGrant())
            {
              //
            // View column for objets_date_objetDetailView0vues_vm_objet_vue_de_base detail
            //
            $column = new DetailColumn(array('pk_objet'), 'detail0vues_vm_objet_vue_de_base', 'objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler', 'objets_date_objetDetailView0vues_vm_objet_vue_de_base_handler', $this->dataset, 'Dates de l\'objet', $this->RenderText('Dates de l\'objet'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
              $grid->AddViewColumn($column);
            }
            
            if (GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.objets.nom_objet')->HasViewGrant())
            {
              //
            // View column for objets_nom_objetDetailView1vues_vm_objet_vue_de_base detail
            //
            $column = new DetailColumn(array('pk_objet'), 'detail1vues_vm_objet_vue_de_base', 'objets_nom_objetDetailEdit1vues_vm_objet_vue_de_base_handler', 'objets_nom_objetDetailView1vues_vm_objet_vue_de_base_handler', $this->dataset, 'Noms de l\'objet', $this->RenderText('Noms de l\'objet'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
              $grid->AddViewColumn($column);
            }
            
            if (GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets')->HasViewGrant())
            {
              //
            // View column for vues_vm_association_objetsDetailView2vues_vm_objet_vue_de_base detail
            //
            $column = new DetailColumn(array('pk_objet'), 'detail2vues_vm_objet_vue_de_base', 'vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_base_handler', 'vues_vm_association_objetsDetailView2vues_vm_objet_vue_de_base_handler', $this->dataset, 'Associations de l\'objet en tant que source', $this->RenderText('Associations de l\'objet en tant que source'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
              $grid->AddViewColumn($column);
            }
            
            if (GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets_inv')->HasViewGrant())
            {
              //
            // View column for vues_vm_association_objets_invDetailView3vues_vm_objet_vue_de_base detail
            //
            $column = new DetailColumn(array('pk_objet'), 'detail3vues_vm_objet_vue_de_base', 'vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_base_handler', 'vues_vm_association_objets_invDetailView3vues_vm_objet_vue_de_base_handler', $this->dataset, 'Associations de l\'objet en tant que cible', $this->RenderText('Associations de l\'objet en tant que cible'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
              $grid->AddViewColumn($column);
            }
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_nom_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->CustomAttributes = 'font-size:120%;';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_definition_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'column-width:20%';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_texte_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
            
            //
            // View column for si_texte_xml field
            //
            $column = new TextViewColumn('si_texte_xml', 'Si Texte Xml', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $grid->AddViewColumn($column);
        }
    
        protected function AddSingleRecordViewColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_nom_handler_view');
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'font-size:120%;';
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_texte_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for date_creation field
            //
            $column = new DateTimeViewColumn('date_creation', 'Date Creation', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for date_modification field
            //
            $column = new DateTimeViewColumn('date_modification', 'Date Modification', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_notes_handler_view');
            $grid->AddSingleRecordViewColumn($column);
            
            //
            // View column for si_texte_xml field
            //
            $column = new TextViewColumn('si_texte_xml', 'Si Texte Xml', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $grid->AddSingleRecordViewColumn($column);
        }
    
        protected function AddEditColumns(Grid $grid)
        {
            //
            // Edit column for nom field
            //
            $editor = new TextAreaEdit('nom_edit', 50, 8);
            $editColumn = new CustomEditColumn('Nom', 'nom', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_type_objet_param field
            //
            $editor = new AutocomleteComboBox('fk_type_objet_param_edit', $this->CreateLinkBuilder());
            $editor->setAllowClear(true);
            $editor->setMinimumInputLength(0);
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new DynamicLookupEditColumn('Fk Type Objet Param', 'fk_type_objet_param', 'fk_type_objet_param_valeur', 'edit_fk_type_objet_param_valeur_search', $editor, $this->dataset, $lookupDataset, 'pk_parametre_systeme', 'valeur', '');
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for pk_objet field
            //
            $editor = new TextEdit('pk_objet_edit');
            $editColumn = new CustomEditColumn('Pk Objet', 'pk_objet', $editor, $this->dataset);
            $editColumn->SetReadOnly(true);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_type_nom_param field
            //
            $editor = new ComboBox('fk_type_nom_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_nom_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Nom Param', 
                'fk_type_nom_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for definition field
            //
            $editor = new TextAreaEdit('definition_edit', 50, 8);
            $editColumn = new CustomEditColumn('Definition', 'definition', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for date_iso field
            //
            $editor = new TextEdit('date_iso_edit');
            $editor->SetMaxLength(59);
            $editColumn = new CustomEditColumn('Date Iso', 'date_iso', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for fk_type_date_param field
            //
            $editor = new ComboBox('fk_type_date_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Date Param', 
                'fk_type_date_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for certitude field
            //
            $editor = new ComboBox('certitude_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_valeurs_type_certitude_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $editColumn = new LookUpEditColumn(
                'Certitude', 
                'certitude', 
                $editor, 
                $this->dataset, 'valeur', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for latitude field
            //
            $editor = new TextEdit('latitude_edit');
            $editColumn = new CustomEditColumn('Latitude', 'latitude', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for longitude field
            //
            $editor = new TextEdit('longitude_edit');
            $editColumn = new CustomEditColumn('Longitude', 'longitude', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for genre field
            //
            $editor = new ComboBox('genre_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_valeurs_genre"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Genre', 
                'genre', 
                $editor, 
                $this->dataset, 'valeur', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for texte field
            //
            $editor = new TextAreaEdit('texte_edit', 50, 8);
            $editColumn = new CustomEditColumn('Texte', 'texte', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for date_creation field
            //
            $editor = new DateTimeEdit('date_creation_edit', false, 'Y-m-d H:i:s', GetFirstDayOfWeek());
            $editColumn = new CustomEditColumn('Date Creation', 'date_creation', $editor, $this->dataset);
            $editColumn->SetReadOnly(true);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for date_modification field
            //
            $editor = new DateTimeEdit('date_modification_edit', false, 'Y-m-d H:i:s', GetFirstDayOfWeek());
            $editColumn = new CustomEditColumn('Date Modification', 'date_modification', $editor, $this->dataset);
            $editColumn->SetReadOnly(true);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for pk_nom_objet field
            //
            $editor = new TextEdit('pk_nom_objet_edit');
            $editColumn = new CustomEditColumn('Pk Nom Objet', 'pk_nom_objet', $editor, $this->dataset);
            $editColumn->SetReadOnly(true);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for pk_date_objet field
            //
            $editor = new TextEdit('pk_date_objet_edit');
            $editColumn = new CustomEditColumn('Pk Date Objet', 'pk_date_objet', $editor, $this->dataset);
            $editColumn->SetReadOnly(true);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
            
            //
            // Edit column for si_texte_xml field
            //
            $editor = new CheckBox('si_texte_xml_edit');
            $editColumn = new CustomEditColumn('Si Texte Xml', 'si_texte_xml', $editor, $this->dataset);
            $editColumn->SetReadOnly(true);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddEditColumn($editColumn);
        }
    
        protected function AddInsertColumns(Grid $grid)
        {
            //
            // Edit column for nom field
            //
            $editor = new TextAreaEdit('nom_edit', 50, 8);
            $editColumn = new CustomEditColumn('Nom', 'nom', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_type_objet_param field
            //
            $editor = new AutocomleteComboBox('fk_type_objet_param_edit', $this->CreateLinkBuilder());
            $editor->setAllowClear(true);
            $editor->setMinimumInputLength(0);
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new DynamicLookupEditColumn('Fk Type Objet Param', 'fk_type_objet_param', 'fk_type_objet_param_valeur', 'insert_fk_type_objet_param_valeur_search', $editor, $this->dataset, $lookupDataset, 'pk_parametre_systeme', 'valeur', '');
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_type_nom_param field
            //
            $editor = new ComboBox('fk_type_nom_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_nom_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Nom Param', 
                'fk_type_nom_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for definition field
            //
            $editor = new TextAreaEdit('definition_edit', 50, 8);
            $editColumn = new CustomEditColumn('Definition', 'definition', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for date_iso field
            //
            $editor = new TextEdit('date_iso_edit');
            $editor->SetMaxLength(59);
            $editColumn = new CustomEditColumn('Date Iso', 'date_iso', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for fk_type_date_param field
            //
            $editor = new ComboBox('fk_type_date_param_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Fk Type Date Param', 
                'fk_type_date_param', 
                $editor, 
                $this->dataset, 'pk_parametre_systeme', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for certitude field
            //
            $editor = new ComboBox('certitude_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_valeurs_type_certitude_date"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $editColumn = new LookUpEditColumn(
                'Certitude', 
                'certitude', 
                $editor, 
                $this->dataset, 'valeur', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for latitude field
            //
            $editor = new TextEdit('latitude_edit');
            $editColumn = new CustomEditColumn('Latitude', 'latitude', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for longitude field
            //
            $editor = new TextEdit('longitude_edit');
            $editColumn = new CustomEditColumn('Longitude', 'longitude', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for genre field
            //
            $editor = new ComboBox('genre_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_valeurs_genre"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $editColumn = new LookUpEditColumn(
                'Genre', 
                'genre', 
                $editor, 
                $this->dataset, 'valeur', 'valeur', $lookupDataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for texte field
            //
            $editor = new TextAreaEdit('texte_edit', 50, 8);
            $editColumn = new CustomEditColumn('Texte', 'texte', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            
            //
            // Edit column for notes field
            //
            $editor = new TextAreaEdit('notes_edit', 50, 8);
            $editColumn = new CustomEditColumn('Notes', 'notes', $editor, $this->dataset);
            $editColumn->SetAllowSetToNull(true);
            $this->ApplyCommonColumnEditProperties($editColumn);
            $grid->AddInsertColumn($editColumn);
            if ($this->GetSecurityInfo()->HasAddGrant())
            {
                $grid->SetShowAddButton(true);
                $grid->SetShowInlineAddButton(false);
            }
            else
            {
                $grid->SetShowInlineAddButton(false);
                $grid->SetShowAddButton(false);
            }
        }
    
        protected function AddPrintColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddPrintColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for date_creation field
            //
            $column = new DateTimeViewColumn('date_creation', 'Date Creation', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for date_modification field
            //
            $column = new DateTimeViewColumn('date_modification', 'Date Modification', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddPrintColumn($column);
        }
    
        protected function AddExportColumns(Grid $grid)
        {
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddExportColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $grid->AddExportColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for date_creation field
            //
            $column = new DateTimeViewColumn('date_creation', 'Date Creation', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for date_modification field
            //
            $column = new DateTimeViewColumn('date_modification', 'Date Modification', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $grid->AddExportColumn($column);
        }
    
        public function GetPageDirection()
        {
            return null;
        }
    
        protected function ApplyCommonColumnEditProperties(CustomEditColumn $column)
        {
            $column->SetDisplaySetToNullCheckBox(false);
            $column->SetDisplaySetToDefaultCheckBox(false);
    		$column->SetVariableContainer($this->GetColumnVariableContainer());
        }
    
        function CreateMasterDetailRecordGridForobjets_date_objetDetailEdit0vues_vm_objet_vue_de_baseGrid()
        {
            $result = new Grid($this, $this->dataset, 'MasterDetailRecordGridForobjets_date_objetDetailEdit0vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $result->SetShowFilterBuilder(false);
            $result->SetAdvancedSearchAvailable(false);
            $result->SetShowUpdateLink(false);
            $result->SetEnabledInlineEditing(false);
            $result->SetShowKeyColumnsImagesInHeader(false);
            $result->SetName('master_grid');
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(false);
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_nom_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->CustomAttributes = 'font-size:120%;';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_definition_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'column-width:20%';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_texte_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for si_texte_xml field
            //
            $column = new TextViewColumn('si_texte_xml', 'Si Texte Xml', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_creation field
            //
            $column = new DateTimeViewColumn('date_creation', 'Date Creation', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_modification field
            //
            $column = new DateTimeViewColumn('date_modification', 'Date Modification', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            return $result;
        }
        function CreateMasterDetailRecordGridForobjets_nom_objetDetailEdit1vues_vm_objet_vue_de_baseGrid()
        {
            $result = new Grid($this, $this->dataset, 'MasterDetailRecordGridForobjets_nom_objetDetailEdit1vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $result->SetShowFilterBuilder(false);
            $result->SetAdvancedSearchAvailable(false);
            $result->SetShowUpdateLink(false);
            $result->SetEnabledInlineEditing(false);
            $result->SetShowKeyColumnsImagesInHeader(false);
            $result->SetName('master_grid');
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(false);
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_nom_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->CustomAttributes = 'font-size:120%;';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_definition_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'column-width:20%';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_texte_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for si_texte_xml field
            //
            $column = new TextViewColumn('si_texte_xml', 'Si Texte Xml', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_creation field
            //
            $column = new DateTimeViewColumn('date_creation', 'Date Creation', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_modification field
            //
            $column = new DateTimeViewColumn('date_modification', 'Date Modification', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            return $result;
        }
        function CreateMasterDetailRecordGridForvues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_baseGrid()
        {
            $result = new Grid($this, $this->dataset, 'MasterDetailRecordGridForvues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $result->SetShowFilterBuilder(false);
            $result->SetAdvancedSearchAvailable(false);
            $result->SetShowUpdateLink(false);
            $result->SetEnabledInlineEditing(false);
            $result->SetShowKeyColumnsImagesInHeader(false);
            $result->SetName('master_grid');
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(false);
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_nom_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->CustomAttributes = 'font-size:120%;';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_definition_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'column-width:20%';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_texte_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for si_texte_xml field
            //
            $column = new TextViewColumn('si_texte_xml', 'Si Texte Xml', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_creation field
            //
            $column = new DateTimeViewColumn('date_creation', 'Date Creation', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_modification field
            //
            $column = new DateTimeViewColumn('date_modification', 'Date Modification', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            return $result;
        }
        function CreateMasterDetailRecordGridForvues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_baseGrid()
        {
            $result = new Grid($this, $this->dataset, 'MasterDetailRecordGridForvues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_base');
            $result->SetAllowDeleteSelected(false);
            $result->SetShowFilterBuilder(false);
            $result->SetAdvancedSearchAvailable(false);
            $result->SetShowUpdateLink(false);
            $result->SetEnabledInlineEditing(false);
            $result->SetShowKeyColumnsImagesInHeader(false);
            $result->SetName('master_grid');
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(false);
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(75);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_nom_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->CustomAttributes = 'font-size:120%;';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_definition_handler_list');
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'column-width:20%';
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_texte_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $column->SetMaxLength(30);
            $column->SetFullTextWindowHandlerName('vues_vm_objet_vue_de_baseGrid_notes_handler_list');
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for si_texte_xml field
            //
            $column = new TextViewColumn('si_texte_xml', 'Si Texte Xml', $this->dataset);
            $column->SetOrderable(true);
            $column = new CheckBoxFormatValueViewColumnDecorator($column);
            $column->SetDisplayValues($this->RenderText('<span class="pg-row-checkbox checked"></span>'), $this->RenderText('<span class="pg-row-checkbox"></span>'));
            $column->setMinimalVisibility(ColumnVisibility::PHONE);
            $column->SetDescription($this->RenderText(''));
            $column->SetFixedWidth(null);
            $result->AddViewColumn($column);
            
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_objet_param_valeur', 'Fk Type Objet Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_objet field
            //
            $column = new TextViewColumn('pk_objet', 'Pk Objet', $this->dataset);
            $column->SetOrderable(true);
            $column = new ExtendedHyperLinkColumnDecorator($column, $this->dataset, 'vues.vm_objet_vue_de_base.php?operation=edit&pk0=%pk_objet%' , '_blank');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_nom_param_valeur', 'Fk Type Nom Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_iso field
            //
            $column = new TextViewColumn('date_iso', 'Date Iso', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('fk_type_date_param_valeur', 'Fk Type Date Param', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('certitude_valeur', 'Certitude', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for latitude field
            //
            $column = new TextViewColumn('latitude', 'Latitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for longitude field
            //
            $column = new TextViewColumn('longitude', 'Longitude', $this->dataset);
            $column->SetOrderable(true);
            $column = new NumberFormatValueViewColumnDecorator($column, 4, ',', '.');
            $result->AddPrintColumn($column);
            
            //
            // View column for valeur field
            //
            $column = new TextViewColumn('genre_valeur', 'Genre', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_creation field
            //
            $column = new DateTimeViewColumn('date_creation', 'Date Creation', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for date_modification field
            //
            $column = new DateTimeViewColumn('date_modification', 'Date Modification', $this->dataset);
            $column->SetDateTimeFormat('Y-m-d H:i:s');
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_nom_objet field
            //
            $column = new TextViewColumn('pk_nom_objet', 'Pk Nom Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for pk_date_objet field
            //
            $column = new TextViewColumn('pk_date_objet', 'Pk Date Objet', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $result->AddPrintColumn($column);
            
            return $result;
        }
        
        function GetCustomClientScript()
        {
            return ;
        }
        
        function GetOnPageLoadedClientScript()
        {
            return ;
        }
        public function ShowEditButtonHandler(&$show)
        {
            if ($this->GetRecordPermission() != null)
                $show = $this->GetRecordPermission()->HasEditGrant($this->GetDataset());
        }
    
        protected function CreateGrid()
        {
            $result = new Grid($this, $this->dataset, 'vues_vm_objet_vue_de_baseGrid');
            if ($this->GetSecurityInfo()->HasDeleteGrant())
               $result->SetAllowDeleteSelected(false);
            else
               $result->SetAllowDeleteSelected(false);   
            
            ApplyCommonPageSettings($this, $result);
            
            $result->SetUseImagesForActions(true);
            $defaultSortedColumns = array();
            $defaultSortedColumns[] = new SortColumn('pk_objet', 'ASC');
            $result->setDefaultOrdering($defaultSortedColumns);
            $result->SetUseFixedHeader(false);
            $result->SetShowLineNumbers(false);
            $result->SetViewMode(ViewMode::TABLE);
            $result->setEnableRuntimeCustomization(true);
            
            $result->SetHighlightRowAtHover(false);
            $result->SetWidth('');
            $this->CreateGridSearchControl($result);
            $this->CreateGridAdvancedSearchControl($result);
            $this->AddOperationsColumns($result);
            $this->AddFieldColumns($result);
            $this->AddSingleRecordViewColumns($result);
            $this->AddEditColumns($result);
            $this->AddInsertColumns($result);
            $this->AddPrintColumns($result);
            $this->AddExportColumns($result);
    
            $this->SetShowPageList(true);
            $this->SetExportToExcelAvailable(true);
            $this->SetExportToWordAvailable(true);
            $this->SetExportToXmlAvailable(true);
            $this->SetExportToCsvAvailable(true);
            $this->SetExportToPdfAvailable(true);
            $this->SetPrinterFriendlyAvailable(true);
            $this->SetSimpleSearchAvailable(true);
            $this->SetAdvancedSearchAvailable(true);
            $this->SetVisualEffectsEnabled(true);
            $this->SetShowTopPageNavigator(true);
            $this->SetShowBottomPageNavigator(true);
    
            //
            // Http Handlers
            //
            $pageView = new objets_date_objetDetailView0vues_vm_objet_vue_de_basePage($this, 'Dates de l\'objet', 'Dates de l\'objet', array('fk_objet'), GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.objets.date_objet'), 'UTF-8', 20, 'objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler');
            
            $pageView->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.objets.date_objet'));
            $handler = new PageHTTPHandler('objets_date_objetDetailView0vues_vm_objet_vue_de_base_handler', $pageView);
            GetApplication()->RegisterHTTPHandler($handler);
            $pageEdit = new objets_date_objetDetailEdit0vues_vm_objet_vue_de_basePage($this, array('fk_objet'), array('pk_objet'), $this->GetForeingKeyFields(), $this->CreateMasterDetailRecordGridForobjets_date_objetDetailEdit0vues_vm_objet_vue_de_baseGrid(), $this->dataset, GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.objets.date_objet'), 'UTF-8');
            
            $pageEdit->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.objets.date_objet'));
            $pageEdit->SetShortCaption('Dates de l\'objet');
            $pageEdit->SetHeader(GetPagesHeader());
            $pageEdit->SetFooter(GetPagesFooter());
            $pageEdit->SetCaption('Dates de l\'objet');
            $pageEdit->SetHttpHandlerName('objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler');
            $handler = new PageHTTPHandler('objets_date_objetDetailEdit0vues_vm_objet_vue_de_base_handler', $pageEdit);
            GetApplication()->RegisterHTTPHandler($handler);
            $pageView = new objets_nom_objetDetailView1vues_vm_objet_vue_de_basePage($this, 'Noms de l\'objet', 'Noms de l\'objet', array('fk_objet'), GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.objets.nom_objet'), 'UTF-8', 20, 'objets_nom_objetDetailEdit1vues_vm_objet_vue_de_base_handler');
            
            $pageView->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.objets.nom_objet'));
            $handler = new PageHTTPHandler('objets_nom_objetDetailView1vues_vm_objet_vue_de_base_handler', $pageView);
            GetApplication()->RegisterHTTPHandler($handler);
            $pageEdit = new objets_nom_objetDetailEdit1vues_vm_objet_vue_de_basePage($this, array('fk_objet'), array('pk_objet'), $this->GetForeingKeyFields(), $this->CreateMasterDetailRecordGridForobjets_nom_objetDetailEdit1vues_vm_objet_vue_de_baseGrid(), $this->dataset, GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.objets.nom_objet'), 'UTF-8');
            
            $pageEdit->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.objets.nom_objet'));
            $pageEdit->SetShortCaption('Noms de l\'objet');
            $pageEdit->SetHeader(GetPagesHeader());
            $pageEdit->SetFooter(GetPagesFooter());
            $pageEdit->SetCaption('Noms de l\'objet');
            $pageEdit->SetHttpHandlerName('objets_nom_objetDetailEdit1vues_vm_objet_vue_de_base_handler');
            $handler = new PageHTTPHandler('objets_nom_objetDetailEdit1vues_vm_objet_vue_de_base_handler', $pageEdit);
            GetApplication()->RegisterHTTPHandler($handler);
            $pageView = new vues_vm_association_objetsDetailView2vues_vm_objet_vue_de_basePage($this, 'Associations de l\'objet en tant que source', 'Associations de l\'objet en tant que source', array('fk_objet_source'), GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets'), 'UTF-8', 20, 'vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_base_handler');
            
            $pageView->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets'));
            $handler = new PageHTTPHandler('vues_vm_association_objetsDetailView2vues_vm_objet_vue_de_base_handler', $pageView);
            GetApplication()->RegisterHTTPHandler($handler);
            $pageEdit = new vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_basePage($this, array('fk_objet_source'), array('pk_objet'), $this->GetForeingKeyFields(), $this->CreateMasterDetailRecordGridForvues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_baseGrid(), $this->dataset, GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets'), 'UTF-8');
            
            $pageEdit->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets'));
            $pageEdit->SetShortCaption('Associations de l\'objet en tant que source');
            $pageEdit->SetHeader(GetPagesHeader());
            $pageEdit->SetFooter(GetPagesFooter());
            $pageEdit->SetCaption('Associations de l\'objet en tant que source');
            $pageEdit->SetHttpHandlerName('vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_base_handler');
            $handler = new PageHTTPHandler('vues_vm_association_objetsDetailEdit2vues_vm_objet_vue_de_base_handler', $pageEdit);
            GetApplication()->RegisterHTTPHandler($handler);
            $pageView = new vues_vm_association_objets_invDetailView3vues_vm_objet_vue_de_basePage($this, 'Associations de l\'objet en tant que cible', 'Associations de l\'objet en tant que cible', array('fk_objet_cible'), GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets_inv'), 'UTF-8', 20, 'vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_base_handler');
            
            $pageView->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets_inv'));
            $handler = new PageHTTPHandler('vues_vm_association_objets_invDetailView3vues_vm_objet_vue_de_base_handler', $pageView);
            GetApplication()->RegisterHTTPHandler($handler);
            $pageEdit = new vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_basePage($this, array('fk_objet_cible'), array('pk_objet'), $this->GetForeingKeyFields(), $this->CreateMasterDetailRecordGridForvues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_baseGrid(), $this->dataset, GetCurrentUserGrantForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets_inv'), 'UTF-8');
            
            $pageEdit->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource('vues.vm_objet_vue_de_base.vues.vm_association_objets_inv'));
            $pageEdit->SetShortCaption('Associations de l\'objet en tant que cible');
            $pageEdit->SetHeader(GetPagesHeader());
            $pageEdit->SetFooter(GetPagesFooter());
            $pageEdit->SetCaption('Associations de l\'objet en tant que cible');
            $pageEdit->SetHttpHandlerName('vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_base_handler');
            $handler = new PageHTTPHandler('vues_vm_association_objets_invDetailEdit3vues_vm_objet_vue_de_base_handler', $pageEdit);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->Bold = true;
            $column->CustomAttributes = 'font-size:120%;';
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_objet_vue_de_baseGrid_nom_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for definition field
            //
            $column = new TextViewColumn('definition', 'Definition', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'column-width:20%';
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_objet_vue_de_baseGrid_definition_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_objet_vue_de_baseGrid_texte_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_objet_vue_de_baseGrid_notes_handler_list', $column);
            GetApplication()->RegisterHTTPHandler($handler);//
            // View column for nom field
            //
            $column = new TextViewColumn('nom', 'Nom', $this->dataset);
            $column->SetOrderable(true);
            $column = new DivTagViewColumnDecorator($column);
            $column->CustomAttributes = 'font-size:120%;';
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_objet_vue_de_baseGrid_nom_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for texte field
            //
            $column = new TextViewColumn('texte', 'Texte', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_objet_vue_de_baseGrid_texte_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            //
            // View column for notes field
            //
            $column = new TextViewColumn('notes', 'Notes', $this->dataset);
            $column->SetOrderable(true);
            $handler = new ShowTextBlobHandler($this->dataset, $this, 'vues_vm_objet_vue_de_baseGrid_notes_handler_view', $column);
            GetApplication()->RegisterHTTPHandler($handler);
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), ''));
            $handler = new DynamicSearchHandler($lookupDataset, $this, 'edit_fk_type_objet_param_valeur_search', 'pk_parametre_systeme', 'valeur', null);
            GetApplication()->RegisterHTTPHandler($handler);
            $lookupDataset = new TableDataset(
                new PgPDOConnectionFactory(),
                GetConnectionOptions(),
                '"vues"."vn_types_objet"');
            $field = new IntegerField('pk_parametre_systeme');
            $lookupDataset->AddField($field, false);
            $field = new StringField('valeur');
            $lookupDataset->AddField($field, false);
            $lookupDataset->setOrderByField('valeur', GetOrderTypeAsSQL(otAscending));
            $lookupDataset->AddCustomCondition(EnvVariablesUtils::EvaluateVariableTemplate($this->GetColumnVariableContainer(), ''));
            $handler = new DynamicSearchHandler($lookupDataset, $this, 'insert_fk_type_objet_param_valeur_search', 'pk_parametre_systeme', 'valeur', null);
            GetApplication()->RegisterHTTPHandler($handler);
            return $result;
        }
        
        public function OpenAdvancedSearchByDefault()
        {
            return false;
        }
    
        protected function DoGetGridHeader()
        {
            return '';
        }
    }



    try
    {
        $Page = new vues_vm_objet_vue_de_basePage("vues.vm_objet_vue_de_base.php", "vues_vm_objet_vue_de_base", GetCurrentUserGrantForDataSource("vues.vm_objet_vue_de_base"), 'UTF-8');
        $Page->SetShortCaption('Vue de base des objets');
        $Page->SetHeader(GetPagesHeader());
        $Page->SetFooter(GetPagesFooter());
        $Page->SetCaption('Vue de base des objets');
        $Page->SetRecordPermission(GetCurrentUserRecordPermissionsForDataSource("vues.vm_objet_vue_de_base"));
        GetApplication()->SetEnableLessRunTimeCompile(GetEnableLessFilesRunTimeCompilation());
        GetApplication()->SetCanUserChangeOwnPassword(
            !function_exists('CanUserChangeOwnPassword') || CanUserChangeOwnPassword());
        GetApplication()->SetMainPage($Page);
        GetApplication()->Run();
    }
    catch(Exception $e)
    {
        ShowErrorPage($e->getMessage());
    }
	
