IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MkFramework Discussion :

Module phpExcel et utilisation données


Sujet :

MkFramework

  1. #1
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut Module phpExcel et utilisation données
    Bonjour Imikado,

    J'essaie d'utiliser le module phpExcel mis à disposition.
    J'ai créé dans un module une action _print() la voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    public function _print(){
     
    		$tDirection_situation=model_direction_situation::getInstance()->findListWithSearch(_root::getParam('annee'),_root::getParam('mois'));
    		$tDirection_situation_tous_services=model_direction_situation_tous_services::getInstance()->findListWithSearch(_root::getParam('annee'),_root::getParam('mois'));
     
    		plugin_debug::addSpy('tDirection_situation_tous_services', $tDirection_situation_tous_services);
     
    		$objPHPExcel = new PHPExcel();
     
           //on ecrit ici sur la premiere feuille excel
           	$objPHPExcel->setActiveSheetIndex(0)
    					->setCellValue('A1', 'SERVICE')
    					->setCellValue('B1', 'SMILEY')
    					->setCellValue('C1', 'INDICATEURS')
    					->setCellValue('D1', 'COMMENTAIRES')
    					->setCellValue('E1', 'PREVISIONNEL')
    					->setCellValue('A2', 'Tous services');
     
     
    		//on force le telechargement en indiquant au navigateur que c'est un fichier excel
           header('Content-Type: application/vnd.ms-excel');
           header('Content-Disposition: attachment;filename="Synthese_mensuelle.xls"');
           header('Cache-Control: max-age=0');
           // If you're serving to IE 9, then the following may be needed
           header('Cache-Control: max-age=1');
     
           // If you're serving to IE over SSL, then the following may be needed
           header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
           header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
           header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
           header ('Pragma: public'); // HTTP/1.0
     
           $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
           $objWriter->save('php://output');
           exit;
     
     
    			}
    J'ai un bouton Imprimer qui active cette action.
    Cette partie fonctionne.
    Je voudrais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    $tDSTS=array();
    		if($tDirection_situation_tous_services){
    		   foreach($tDirection_situation_tous_services as $oDirection_situation_tous_services){
     
    		       $tDSTS[]=array($oDirection_situation_tous_services->MOIS,
    		       	$oDirection_situation_tous_services->ANNEE,
    		       	$oDirection_situation_tous_services->COMMENTAIRES_dsts);
    		   }
    	   	}
     
    	   	$comm_ts =$tDSTS[0][2];
     
    $objPHPExcel = new PHPExcel();
     
           //on ecrit ici sur la premiere feuille excel
           	$objPHPExcel->setActiveSheetIndex(0)
    					->setCellValue('A1', 'SERVICE')
    					->setCellValue('B1', 'SMILEY')
    					->setCellValue('C1', 'INDICATEURS')
    					->setCellValue('D1', 'COMMENTAIRES')
    					->setCellValue('E1', 'PREVISIONNEL')
    					->setCellValue('A2', $comm_ts);
    Mais j'ai ce message erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    Undefined offset: 0
    #0 C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\data\genere\cellule_statistiques\module\direction_situation\main.php(112): exception_error_handler(8, 'Undefined offse...', 'C:\\xampp\\htdocs...', 112, Array)
    #1 C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\lib\framework\class_root.php(263): module_direction_situation->_print()
    #2 C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\data\genere\cellule_statistiques\public\index.php(47): _root->run()
    #3 {main}
     
    Detail:
    #0 C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\data\genere\cellule_statistiques\module\direction_situation\main.php (112)
    exception_error_handler( , 'Undefined offset: 0' , 'C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\data\genere\cellule_statistiques\module\direction_situation\main.php' , , Array ( [tDirection_situation] => Array ( ) [tDirection_situation_tous_services] => Array ( ) [tDSTS] => Array ( ) ) )
    #1 C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\lib\framework\class_root.php (263)
    module_direction_situation -> _print( )
    #2 C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\data\genere\cellule_statistiques\public\index.php (47)
    _root -> run( )
    #3 {main}
     
    Fichier : C:\xampp\htdocs\9-mkFramework\mkframework_v4_126_1_r311\data\genere\cellule_statistiques\module\direction_situation\main.php ligne 112
     
    Message : Undefined offset: 0

  2. #2
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Je pense que le problème vient de ce bloc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $tDSTS=array();
    		if($tDirection_situation_tous_services){
    		   foreach($tDirection_situation_tous_services as $oDirection_situation_tous_services){
     
    		       $tDSTS[]=array($oDirection_situation_tous_services->MOIS,
    		       	$oDirection_situation_tous_services->ANNEE,
    		       	$oDirection_situation_tous_services->COMMENTAIRES_dsts);
    		   }
    	   	}
     
    	   	$comm_ts =$tDSTS[0][2];
    Si vous ne rentrez pas dans cette boucle, votre tableau n'est pas rempli, donc l'indice 0 n'existe pas
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  3. #3
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par imikado Voir le message
    Je pense que le problème vient de ce bloc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $tDSTS=array();
    		if($tDirection_situation_tous_services){
    		   foreach($tDirection_situation_tous_services as $oDirection_situation_tous_services){
     
    		       $tDSTS[]=array($oDirection_situation_tous_services->MOIS,
    		       	$oDirection_situation_tous_services->ANNEE,
    		       	$oDirection_situation_tous_services->COMMENTAIRES_dsts);
    		   }
    	   	}
     
    	   	$comm_ts =$tDSTS[0][2];
    Si vous ne rentrez pas dans cette boucle, votre tableau n'est pas rempli, donc l'indice 0 n'existe pas
    Dis mois comment recupérer les données de $tDirection_situation_tous_services puis de les injecter grâce à une variable $comm_ts dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $objPHPExcel->setActiveSheetIndex(0)
    					->setCellValue('A1', 'SERVICE')
    					->setCellValue('B1', 'SMILEY')
    					->setCellValue('C1', 'INDICATEURS')
    					->setCellValue('D1', 'COMMENTAIRES')
    					->setCellValue('E1', 'PREVISIONNEL')
    					->setCellValue('A2', 'Tous services')
    					->setCellValue('B2', $comm_ts);

  4. #4
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par viny1976 Voir le message
    Dis mois comment recupérer les données de $tDirection_situation_tous_services puis de les injecter grâce à une variable $comm_ts dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $objPHPExcel->setActiveSheetIndex(0)
    					->setCellValue('A1', 'SERVICE')
    					->setCellValue('B1', 'SMILEY')
    					->setCellValue('C1', 'INDICATEURS')
    					->setCellValue('D1', 'COMMENTAIRES')
    					->setCellValue('E1', 'PREVISIONNEL')
    					->setCellValue('A2', 'Tous services')
    					->setCellValue('B2', $comm_ts);
    Je suis bloqué.

  5. #5
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Par exemple en le faisant dans la boucle, non ?

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $objPHPExcel->setActiveSheetIndex(0);
     
     
    if($tDirection_situation_tous_services){
    		   foreach($tDirection_situation_tous_services as $oDirection_situation_tous_services){
     
    			$objPHPExcel->setCellValue('A1', $oDirection_situation_tous_services->MOIS );
    					$objPHPExcel->setCellValue('B1', $oDirection_situation_tous_services->ANNEE );
    					$objPHPExcel->setCellValue('C1', 	$oDirection_situation_tous_services->COMMENTAIRES_dsts);
     
    		   }
    	   	}
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  6. #6
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par imikado Voir le message
    Par exemple en le faisant dans la boucle, non ?

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $objPHPExcel->setActiveSheetIndex(0);
     
     
    if($tDirection_situation_tous_services){
    		   foreach($tDirection_situation_tous_services as $oDirection_situation_tous_services){
     
    			$objPHPExcel->setCellValue('A1', $oDirection_situation_tous_services->MOIS );
    					$objPHPExcel->setCellValue('B1', $oDirection_situation_tous_services->ANNEE );
    					$objPHPExcel->setCellValue('C1', 	$oDirection_situation_tous_services->COMMENTAIRES_dsts);
     
    		   }
    	   	}
    J'ai appliqué ce que tu as fait mais mon fichier excel est vide!
    Dans l' action _export() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $tDirection_situation=model_direction_situation::getInstance()->findListWithSearch(_root::getParam('annee'),_root::getParam('mois'));
    		$tDirection_situation_tous_services=model_direction_situation_tous_services::getInstance()->findListWithSearch(_root::getParam('annee'),_root::getParam('mois'));
    Je n'arrive pas à afficher les résultat à l'intérieur de $tDirection_situation_tous_services pourquoi?

  7. #7
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Ca voudrait dire qu'il n'y a rien dans $tDirection_situation_tous_services ?

    vvous pouvez faire un print_r de $tDirection_situation_tous_services pour verifier que le tableau est bien rempli ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    print_r($tDirection_situation_tous_services);exit;
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  8. #8
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par imikado Voir le message
    Ca voudrait dire qu'il n'y a rien dans $tDirection_situation_tous_services ?

    vvous pouvez faire un print_r de $tDirection_situation_tous_services pour verifier que le tableau est bien rempli ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    print_r($tDirection_situation_tous_services);exit;
    Je l'ai fait
    Avec la méthode _print() je n'ai aucun résultat dans $tDirection_situation_tous_service
    Mais avec la méthode _list() le tableau est rempli
    De plus dans la barre de debug dans POST j'ai bien mes paramètres année et mois.

    Je sèche un peu. Une idée?

  9. #9
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Si au debut, vous affichez le tout ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
     
    print "anee";
    print_r(_root::getParam('annee'));
     
    print "mois";
    print_r(_root::getParam('mois'));
     
     
    $tDirection_situation_tous_services=model_direction_situation_tous_services::getInstance()->findListWithSearch(_root::getParam('annee'),_root::getParam('mois'));
     
    print "resultats";
    print_r($tDirection_situation_tous_services);
     
    exit;
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  10. #10
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par imikado Voir le message
    Si au debut, vous affichez le tout ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
    print "anee";
    print_r(_root::getParam('annee'));
     
    print "mois";
    print_r(_root::getParam('mois'));
     
     
    $tDirection_situation_tous_services=model_direction_situation_tous_services::getInstance()->findListWithSearch(_root::getParam('annee'),_root::getParam('mois'));
     
    print "resultats";
    print_r($tDirection_situation_tous_services);
     
     
     
    exit;
    Il n'y avait rien du tout
    Donc j'ai dû procéder autrement.
    J'ai créé une page avec deux menus déroulant pour le mois et l'année.

    Je n'ai pas réussi à le faire sur la page direction_situation::search
    Si tu as une solution je serais preneur.

  11. #11
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    si ces 2 variables sont vide c'est que le formulaire n'est pas bien envoyé

    vous pouvez toujours ajouté un print_r de $_POST pour confirmer
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  12. #12
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par imikado Voir le message
    si ces 2 variables sont vide c'est que le formulaire n'est pas bien envoyé

    vous pouvez toujours ajouté un print_r de $_POST pour confirmer
    C'est bon j'ai réussi à faire ce que je voulais.
    J'ai créé une page avec les deux critères mois et année.
    Ensuite dans mon main.php j'ai du adapter mon objet phpExcel.
    Voilà ce que cela donne si ca peut aider quelqu'un :

    main.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
     
    public function _export(){
     
    		$tDirection_situation=model_direction_situation::getInstance()->findListWithSearchDS(_root::getParam('annee'),_root::getParam('mois'));
    		$tDirection_situation_tous_services=model_direction_situation_tous_services::getInstance()->findListWithSearchDSTS(_root::getParam('annee'),_root::getParam('mois'));
     
    		$tJoinmodel_service=model_service::getInstance()->getSelect2();
     
    		//on instancie le module
    	    $oModuleExcel=new module_phpExcel;
     
           //on recupere ici l'objet PhpExcel
           //dans la documentation equivalent a $objPHPExcel=new PHPExcel();
           $objPHPExcel=$oModuleExcel->getObject();
     
           	$sheet = $objPHPExcel->getActiveSheet();
     
    		if($tDirection_situation_tous_services){
    				   foreach($tDirection_situation_tous_services as $oDirection_situation_tous_services){
    				   		switch ($oDirection_situation_tous_services->MOIS) {
    				   			case 1:
    				   			$mois ="Janvier";
    				   			break;
    				   			case 2:
    				   			$mois ="Février";
    				   			break;
    				   			case 3:
    				   			$mois ="Mars";
    				   			break;
    				   			case 4:
    				   			$mois ="Avril";
    				   			break;
    				   			case 5:
    				   			$mois ="Mai";
    				   			break;
    				   			case 6:
    				   			$mois ="Juin";
    				   			break;
    				   			case 7:
    				   			$mois ="Juillet";
    				   			break;
    				   			case 8:
    				   			$mois ="Août";
    				   			break;
    				   			case 9:
    				   			$mois ="Septembre";
    				   			break;
    				   			case 10:
    				   			$mois ="Octobre";
    				   			break;
    				   			case 11:
    				   			$mois ="Novembre";
    				   			break;
    				   			case 12:
    				   			$mois ="Décembre";
    				   			break;
     
    				   		}
     
    						$sheet->setCellValue('D1', 'CONSULTATION SITUATION à '.$mois. ' '.$oDirection_situation_tous_services->ANNEE );
    							$styleD1 = $sheet->getStyle('D1');
    							$styleFont = $styleD1->getFont()
    							->applyFromArray(array(
    								'bold'=>true,
    							    'size'=>20,
    							    'name'=>'Comic Sans MS',
    							    'color'=>array(
    							        'rgb'=>'0000FF')
    							));
    						$sheet->setCellValue('A3', 'SERVICES' );
    							$styleA3 = $sheet->getStyle('A3');
    							$styleFont = $styleA3->getFont()
    							->applyFromArray(array(
    								'bold'=>true,
    							));
    							$styleA3->applyFromArray(array(
    					            'fill'=>array(
    					                'type'=>PHPExcel_Style_Fill::FILL_SOLID,
    					                'color'=>array(
    					                    'rgb'=>'D3D3D3')
    					            )
    					        ));
    						$sheet->setCellValue('B3', 'SITUATION' );
    							$styleB3 = $sheet->getStyle('B3');
    							$styleFont = $styleB3->getFont()
    							->applyFromArray(array(
    								'bold'=>true,
    							));
    							$styleB3->applyFromArray(array(
    					            'fill'=>array(
    					                'type'=>PHPExcel_Style_Fill::FILL_SOLID,
    					                'color'=>array(
    					                    'rgb'=>'D3D3D3')
    					            )
    					        ));
    						$sheet->setCellValue('C3', 'INDICATEURS' );
    							$styleC3 = $sheet->getStyle('C3');
    							$styleFont = $styleC3->getFont()
    							->applyFromArray(array(
    								'bold'=>true,
    							));
    							$styleC3->applyFromArray(array(
    					            'fill'=>array(
    					                'type'=>PHPExcel_Style_Fill::FILL_SOLID,
    					                'color'=>array(
    					                    'rgb'=>'D3D3D3')
    					            )
    					        ));
    						$sheet->setCellValue('D3', 'COMMENTAIRES' );
    							$styleD3 = $sheet->getStyle('D3');
    							$styleFont = $styleD3->getFont()
    							->applyFromArray(array(
    								'bold'=>true,
    							));
    							$styleD3->applyFromArray(array(
    					            'fill'=>array(
    					                'type'=>PHPExcel_Style_Fill::FILL_SOLID,
    					                'color'=>array(
    					                    'rgb'=>'D3D3D3')
    					            )
    					        ));
    						$sheet->setCellValue('E3', 'COMMENTAIRES SUR LES EVOLUTIONS ATTENDUES AU MOIS SUIVANT' );
    							$styleE3 = $sheet->getStyle('E3');
    							$styleFont = $styleE3->getFont()
    							->applyFromArray(array(
    								'bold'=>true,
    							));
    							$styleE3->applyFromArray(array(
    					            'fill'=>array(
    					                'type'=>PHPExcel_Style_Fill::FILL_SOLID,
    					                'color'=>array(
    					                    'rgb'=>'D3D3D3')
    					            )
    					        ));
    						$sheet->setCellValue('A4', 'Tous services' );
    							$styleA4 = $sheet->getStyle('A4');
    							$styleFont = $styleA4->getFont()
    							->applyFromArray(array(
    								'bold'=>true,
    							));
    							$styleA4->applyFromArray(array(
    					            'fill'=>array(
    					                'type'=>PHPExcel_Style_Fill::FILL_SOLID,
    					                'color'=>array(
    					                    'rgb'=>'D3D3D3')
    					            )
    					        ));
    						$sheet->setCellValue('B4', html_entity_decode($oDirection_situation_tous_services->COMMENTAIRES_dsts));
    				   }
    		}
     
    		$ligne = 5;
    		if($tDirection_situation){
    				   foreach($tDirection_situation as $tDirection_situation){
    						$sheet->setCellValueByColumnAndRow(0,$ligne, html_entity_decode($tJoinmodel_service[$tDirection_situation->SERVICE], ENT_QUOTES , 'UTF-8' ));
    						$sheet->setCellValueByColumnAndRow(1,$ligne, $tDirection_situation->SMILEY);
     
    						$sheet->setCellValueByColumnAndRow(2,$ligne, strip_tags(html_entity_decode($tDirection_situation->INDICATEURS, ENT_QUOTES , 'UTF-8')));
    						$sheet->setCellValueByColumnAndRow(3,$ligne, strip_tags(html_entity_decode($tDirection_situation->COMMENTAIRES, ENT_QUOTES , 'UTF-8')));
    						$sheet->setCellValueByColumnAndRow(4,$ligne, strip_tags(html_entity_decode($tDirection_situation->PREVISIONNEL, ENT_QUOTES , 'UTF-8')));
    						$ligne++;
    				   }
    		}
     
    		//enfin ici pour sauvegarder le fichier
    		$oModuleExcel->save($objPHPExcel,'../tmp/Consultation_situation.xls');
     
    		$oView=new _view('direction_situation::export');
    		$oView->tDirection_situation=$tDirection_situation;
    		$oView->tDirection_situation_tous_services=$tDirection_situation_tous_services;
     
    		$this->oLayout->add('main',$oView);
     
    	}

    Voici la vue view/export.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    <?php 
    $oForm=new plugin_Form($this->tDirection_situation);
     
    ?>
    <form action="" method="POST">
    			<div class="row well">
    				<div class="col-sm-2">
     
    				</div>
     
    				<div class="col-sm-2">
    					<!--<input type="text"  name="annee" class="form-control text-center" placeholder="Année" />-->
    					<?php echo $oForm->getSelect('annee',array('0'=>'Année...','2015'=>'2015','2016'=>'2016'),array('class'=>'form-control text-center')) ?>
    				</div>
    				<div class="col-sm-2">
    				   <!--<input type="text"  name="mois" class="form-control text-center" placeholder="Mois" />-->
    				   <?php echo $oForm->getSelect('mois',array('0'=>'Mois...','1'=>'Janvier','2'=>'Février','3'=>'Mars','4'=>'Avril','5'=>'Mai','6'=>'Juin','7'=>'Juillet','8'=>'Août','9'=>'Septembre','10'=>'Octobre','11'=>'Novembre','12'=>'Décembre'),array('class'=>'form-control text-center')) ?>
    				</div>
    				<div class="col-sm-2">
    				   <input type="submit" name="exporter" value="Exporter" class="btn btn-warning">
    				</div>
    				<div class="col-sm-2">
    				   <?php if ($_POST) {echo 'Fichier exporté';}?>
    				</div>
    				<div class="col-sm-2">
     
    				</div>
     
    			</div>
    </form>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Impossible d'ouvrir le module de base de données
    Par ph_anrys dans le forum Bases de données
    Réponses: 4
    Dernier message: 27/04/2009, 14h27
  2. Supprimer tous les modules (d'un fichier donné)
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/06/2007, 12h20
  3. [VBA] Plusieurs modules : But et utilisations ?
    Par NiKoTiNe dans le forum VBA Access
    Réponses: 5
    Dernier message: 23/05/2007, 16h18
  4. [VBA] [2000] Créer un module pour compacter les données
    Par DamKre dans le forum VBA Access
    Réponses: 6
    Dernier message: 03/05/2007, 07h14
  5. utiliser données texte pour faire des calculs
    Par sarah67 dans le forum Access
    Réponses: 20
    Dernier message: 06/02/2006, 14h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo