Example #1
0
 protected function AddInsertColumns(Grid $grid)
 {
     //
     // Edit column for id_accion field
     //
     $editor = new ComboBox('id_accion_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
     $editor->setInlineStyles('width: 440px;');
     $lookupDataset = new TableDataset(
         new PgConnectionFactory(),
         GetConnectionOptions(),
         '"public"."sga_accion"');
     $field = new IntegerField('id_accion', null, null, true);
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, true);
     $field = new IntegerField('id_tipo_espacio');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_tipo_bien');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_origen');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_metodologia');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_periodicidad');
     $lookupDataset->AddField($field, false);
     $field = new BooleanField('fl_a_demanda');
     $lookupDataset->AddField($field, false);
     $field = new StringField('ds_referencia');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_tipo_accion');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_sector');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('nu_personas');
     $lookupDataset->AddField($field, false);
     $field = new TimeField('tm_carga_horaria');
     $lookupDataset->AddField($field, false);
     $field = new StringField('fe_horas');
     $lookupDataset->AddField($field, false);
     $lookupDataset->setOrderByField('ds_referencia', GetOrderTypeAsSQL(otAscending));
     $editColumn = new LookUpEditColumn(
         'Acción', 
         'id_accion', 
         $editor, 
         $this->dataset, 'id_accion', 'ds_referencia', $lookupDataset);
     $validator = new RequiredValidator(StringUtils::Format($this->GetLocalizerCaptions()->GetMessageString('RequiredValidationMessage'), $this->RenderText($editColumn->GetCaption())));
     $editor->GetValidatorCollection()->AddValidator($validator);
     $this->ApplyCommonColumnEditProperties($editColumn);
     $grid->AddInsertColumn($editColumn);
     
     //
     // Edit column for id_espacio field
     //
     $editor = new ComboBox('id_espacio_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
     $editor->setInlineStyles('width: 440px;');
     $lookupDataset = new TableDataset(
         new PgConnectionFactory(),
         GetConnectionOptions(),
         '"public"."sga_espacio"');
     $field = new IntegerField('id_espacio', null, null, true);
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, true);
     $field = new IntegerField('id_tipo_espacio');
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_espacio_contenedor');
     $lookupDataset->AddField($field, false);
     $field = new StringField('co_espacio');
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, false);
     $field = new StringField('no_espacio');
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, false);
     $field = new StringField('co_plano');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_planta');
     $lookupDataset->AddField($field, false);
     $field = new StringField('ds_referencia');
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('id_sector');
     $lookupDataset->AddField($field, false);
     $lookupDataset->setOrderByField('ds_referencia', GetOrderTypeAsSQL(otAscending));
     $editColumn = new LookUpEditColumn(
         'Espacio', 
         'id_espacio', 
         $editor, 
         $this->dataset, 'id_espacio', 'ds_referencia', $lookupDataset);
     $validator = new RequiredValidator(StringUtils::Format($this->GetLocalizerCaptions()->GetMessageString('RequiredValidationMessage'), $this->RenderText($editColumn->GetCaption())));
     $editor->GetValidatorCollection()->AddValidator($validator);
     $this->ApplyCommonColumnEditProperties($editColumn);
     $grid->AddInsertColumn($editColumn);
     
     //
     // Edit column for id_periodicidad field
     //
     $editor = new ComboBox('id_periodicidad_edit', $this->GetLocalizerCaptions()->GetMessageString('PleaseSelect'));
     $lookupDataset = new TableDataset(
         new PgConnectionFactory(),
         GetConnectionOptions(),
         '"public"."sga_periodicidad"');
     $field = new IntegerField('id_periodicidad', null, null, true);
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, true);
     $field = new StringField('no_periodicidad');
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, false);
     $field = new IntegerField('va_frecuencia');
     $field->SetIsNotNull(true);
     $lookupDataset->AddField($field, false);
     $lookupDataset->setOrderByField('no_periodicidad', GetOrderTypeAsSQL(otAscending));
     $editColumn = new LookUpEditColumn(
         'Periodicidad', 
         'id_periodicidad', 
         $editor, 
         $this->dataset, 'id_periodicidad', 'no_periodicidad', $lookupDataset);
     $editColumn->SetAllowSetToNull(true);
     $this->ApplyCommonColumnEditProperties($editColumn);
     $grid->AddInsertColumn($editColumn);
     
     //
     // Edit column for ds_detalle field
     //
     $editor = new TextAreaEdit('ds_detalle_edit', 50, 8);
     $editColumn = new CustomEditColumn('Detalle', 'ds_detalle', $editor, $this->dataset);
     $editColumn->SetAllowSetToNull(true);
     $this->ApplyCommonColumnEditProperties($editColumn);
     $grid->AddInsertColumn($editColumn);
     
     //
     // Edit column for fe_inicio field
     //
     $editor = new DateTimeEdit('fe_inicio_edit', true, 'd/m/Y H:i:s', GetFirstDayOfWeek());
     $editColumn = new CustomEditColumn('Fecha Início', 'fe_inicio', $editor, $this->dataset);
     $editColumn->SetAllowSetToNull(true);
     $this->ApplyCommonColumnEditProperties($editColumn);
     $grid->AddInsertColumn($editColumn);
     
     //
     // Edit column for nu_personas field
     //
     $editor = new TextEdit('nu_personas_edit');
     $editColumn = new CustomEditColumn('Personas', 'nu_personas', $editor, $this->dataset);
     $editColumn->SetAllowSetToNull(true);
     $this->ApplyCommonColumnEditProperties($editColumn);
     $grid->AddInsertColumn($editColumn);
     
     //
     // Edit column for tm_carga_horaria field
     //
     $editor = new TimeEdit('tm_carga_horaria_edit');
     $editColumn = new CustomEditColumn('Carga Horária', 'tm_carga_horaria', $editor, $this->dataset);
     $editColumn->SetAllowSetToNull(true);
     $this->ApplyCommonColumnEditProperties($editColumn);
     $grid->AddInsertColumn($editColumn);
     
     //
     // Edit column for fe_horas field
     //
     $editor = new MultiValueSelect('fe_horas_edit');
     $editor->AddValue('00:00', $this->RenderText('00:00'));
     $editor->AddValue('00:15', $this->RenderText('00:15'));
     $editor->AddValue('00:30', $this->RenderText('00:30'));
     $editor->AddValue('00:45', $this->RenderText('00:45'));
     $editor->AddValue('01:00', $this->RenderText('01:00'));
     $editor->AddValue('01:15', $this->RenderText('01:15'));
     $editor->AddValue('01:30', $this->RenderText('01:30'));
     $editor->AddValue('01:45', $this->RenderText('01:45'));
     $editor->AddValue('02:00', $this->RenderText('02:00'));
     $editor->AddValue('02:15', $this->RenderText('02:15'));
     $editor->AddValue('02:30', $this->RenderText('02:30'));
     $editor->AddValue('02:45', $this->RenderText('02:45'));
     $editor->AddValue('03:00', $this->RenderText('03:00'));
     $editor->AddValue('03:15', $this->RenderText('03:15'));
     $editor->AddValue('03:30', $this->RenderText('03:30'));
     $editor->AddValue('03:45', $this->RenderText('03:45'));
     $editor->AddValue('04:00', $this->RenderText('04:00'));
     $editor->AddValue('04:15', $this->RenderText('04:15'));
     $editor->AddValue('04:30', $this->RenderText('04:30'));
     $editor->AddValue('04:45', $this->RenderText('04:45'));
     $editor->AddValue('05:00', $this->RenderText('05:00'));
     $editor->AddValue('05:15', $this->RenderText('05:15'));
     $editor->AddValue('05:30', $this->RenderText('05:30'));
     $editor->AddValue('05:45', $this->RenderText('05:45'));
     $editor->AddValue('06:00', $this->RenderText('06:00'));
     $editor->AddValue('06:15', $this->RenderText('06:15'));
     $editor->AddValue('06:30', $this->RenderText('06:30'));
     $editor->AddValue('06:45', $this->RenderText('06:45'));
     $editor->AddValue('07:00', $this->RenderText('07:00'));
     $editor->AddValue('07:15', $this->RenderText('07:15'));
     $editor->AddValue('07:30', $this->RenderText('07:30'));
     $editor->AddValue('07:45', $this->RenderText('07:45'));
     $editor->AddValue('08:00', $this->RenderText('08:00'));
     $editor->AddValue('08:15', $this->RenderText('08:15'));
     $editor->AddValue('08:30', $this->RenderText('08:30'));
     $editor->AddValue('08:45', $this->RenderText('08:45'));
     $editor->AddValue('09:00', $this->RenderText('09:00'));
     $editor->AddValue('09:15', $this->RenderText('09:15'));
     $editor->AddValue('09:30', $this->RenderText('09:30'));
     $editor->AddValue('09:45', $this->RenderText('09:45'));
     $editor->AddValue('10:00', $this->RenderText('10:00'));
     $editor->AddValue('10:15', $this->RenderText('10:15'));
     $editor->AddValue('10:30', $this->RenderText('10:30'));
     $editor->AddValue('10:45', $this->RenderText('10:45'));
     $editor->AddValue('11:00', $this->RenderText('11:00'));
     $editor->AddValue('11:15', $this->RenderText('11:15'));
     $editor->AddValue('11:30', $this->RenderText('11:30'));
     $editor->AddValue('11:45', $this->RenderText('11:45'));
     $editor->AddValue('12:00', $this->RenderText('12:00'));
     $editor->AddValue('12:15', $this->RenderText('12:15'));
     $editor->AddValue('12:30', $this->RenderText('12:30'));
     $editor->AddValue('12:45', $this->RenderText('12:45'));
     $editor->AddValue('13:00', $this->RenderText('13:00'));
     $editor->AddValue('13:15', $this->RenderText('13:15'));
     $editor->AddValue('13:30', $this->RenderText('13:30'));
     $editor->AddValue('13:45', $this->RenderText('13:45'));
     $editor->AddValue('14:00', $this->RenderText('14:00'));
     $editor->AddValue('14:15', $this->RenderText('14:15'));
     $editor->AddValue('14:30', $this->RenderText('14:30'));
     $editor->AddValue('14:45', $this->RenderText('14:45'));
     $editor->AddValue('15:00', $this->RenderText('15:00'));
     $editor->AddValue('15:15', $this->RenderText('15:15'));
     $editor->AddValue('15:30', $this->RenderText('15:30'));
     $editor->AddValue('15:45', $this->RenderText('15:45'));
     $editor->AddValue('16:00', $this->RenderText('16:00'));
     $editor->AddValue('16:15', $this->RenderText('16:15'));
     $editor->AddValue('16:30', $this->RenderText('16:30'));
     $editor->AddValue('16:45', $this->RenderText('16:45'));
     $editor->AddValue('17:00', $this->RenderText('17:00'));
     $editor->AddValue('17:15', $this->RenderText('17:15'));
     $editor->AddValue('17:30', $this->RenderText('17:30'));
     $editor->AddValue('17:45', $this->RenderText('17:45'));
     $editor->AddValue('18:00', $this->RenderText('18:00'));
     $editor->AddValue('18:15', $this->RenderText('18:15'));
     $editor->AddValue('18:30', $this->RenderText('18:30'));
     $editor->AddValue('18:45', $this->RenderText('18:45'));
     $editor->AddValue('19:00', $this->RenderText('19:00'));
     $editor->AddValue('19:15', $this->RenderText('19:15'));
     $editor->AddValue('19:30', $this->RenderText('19:30'));
     $editor->AddValue('19:45', $this->RenderText('19:45'));
     $editor->AddValue('20:00', $this->RenderText('20:00'));
     $editor->AddValue('20:15', $this->RenderText('20:15'));
     $editor->AddValue('20:30', $this->RenderText('20:30'));
     $editor->AddValue('20:45', $this->RenderText('20:45'));
     $editor->AddValue('21:00', $this->RenderText('21:00'));
     $editor->AddValue('21:15', $this->RenderText('21:15'));
     $editor->AddValue('21:30', $this->RenderText('21:30'));
     $editor->AddValue('21:45', $this->RenderText('21:45'));
     $editor->AddValue('22:00', $this->RenderText('22:00'));
     $editor->AddValue('22:15', $this->RenderText('22:15'));
     $editor->AddValue('22:30', $this->RenderText('22:30'));
     $editor->AddValue('22:45', $this->RenderText('22:45'));
     $editor->AddValue('23:00', $this->RenderText('23:00'));
     $editor->AddValue('23:15', $this->RenderText('23:15'));
     $editor->AddValue('23:30', $this->RenderText('23:30'));
     $editor->AddValue('23:45', $this->RenderText('23:45'));
     $editor->setMaxSelectionSize(0);
     $editColumn = new CustomEditColumn('Horas Ejecución', 'fe_horas', $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);
     }
 }