Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class IntervenantMigration extends Migration {
- public function __construct() {
- parent::__construct();
- $import_path = variable_get('df_import_path','/home/dev/dalloz/dallozformation/ftp/');
- //On ne definie pas les columns on se base sur les intitulés de la premiere colonne
- $columns = array();
- $this->source = new MigrateSourceCSV($import_path.'intervenants.csv', $columns, array('header_rows' => 1));
- $this->destination = new MigrateDestinationNode('df_intervenant');
- $this->map = new MigrateSQLMap(
- $this->machineName,
- array(
- 'NumIntervenant' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'size' => 'normal'
- )
- ),
- MigrateDestinationNode::getKeySchema()
- );
- $this->addFieldMapping('field_intervenant_num', 'NumIntervenant');
- $this->addFieldMapping('field_intervenant_nom', 'NomIntervenant');
- $this->addFieldMapping('field_intervenant_prenom', 'PrenomIntervenant');
- $this->addFieldMapping('field_intervenant_qualite', 'Qualite');
- $this->addFieldMapping('field_intervenant_civilite', 'NumTitre');
- }
- //Permet de faire des traitements sur les donnés recup depuis le csv
- public function prepareRow($values) {
- //Si pas de nom on insere pas l'intervenant
- if($values->NomIntervenant == '') {
- // dsm($values);
- // $this->saveMessage("L'intervenant ".$values->NumIntervenant." n'a pas été importé car son nom n'est pas rempli", MIGRATION::MESSAGE_NOTICE);
- // watchdog('debug import', print_r($values, TRUE));
- $this->saveMessage("L'intervenant ".$values->NumIntervenant." n'a pas été importé car son nom n'est pas rempli");
- return FALSE;
- }
- else {
- //On met le civilité à NULL si non rempli
- if(!$values->NumTitre) {
- $values->NumTitre = NULL;
- }
- }
- }
- //Permet de faire des traitements sur le node juste avant qu il ne soit save
- // public function prepare($entity, $row) {
- // }
- }
Add Comment
Please, Sign In to add comment