Amélioration sauvegarde profil export:
* La sauvegarde est mise sur l'étape 3 afin de pouvoir sauvé aussi l'ordre. * Meilleure gestion erreur. * Traduction
This commit is contained in:
parent
31df94c7e8
commit
8393500dbd
@ -237,7 +237,7 @@ class Export
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
dolibarr_print_error($this->db);
|
$this->error=$this->db->error()." sql=".$sql;
|
||||||
$this->db->rollback();
|
$this->db->rollback();
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -135,13 +135,38 @@ if ($action == 'builddoc')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($step == 2 && $action == 'add')
|
if ($action == 'add_export_model')
|
||||||
{
|
{
|
||||||
|
if ($export_name)
|
||||||
|
{
|
||||||
|
asort($array_selected);
|
||||||
|
|
||||||
|
// Set save string
|
||||||
|
$hexa='';
|
||||||
|
foreach($array_selected as $key=>$val)
|
||||||
|
{
|
||||||
|
if ($hexa) $hexa.=',';
|
||||||
|
$hexa.=$key;
|
||||||
|
}
|
||||||
|
|
||||||
$objexport->model_name = $export_name;
|
$objexport->model_name = $export_name;
|
||||||
$objexport->datatoexport = $datatoexport;
|
$objexport->datatoexport = $datatoexport;
|
||||||
$objexport->hexa = $hexa;
|
$objexport->hexa = $hexa;
|
||||||
|
|
||||||
$result = $objexport->create($user);
|
$result = $objexport->create($user);
|
||||||
|
if ($result >= 0)
|
||||||
|
{
|
||||||
|
$mesg='<div class="ok">'.$langs->trans("ExportModelSaved",$objexport->model_name).'</div>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$mesg='<div class="error">'.$objexport->error.'</div>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$mesg='<div class="error">'.$langs->trans("ErrorFieldRequired",$langs->transnoentities("ExportModelName")).'</div>';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($step == 2 && $action == 'select_model')
|
if ($step == 2 && $action == 'select_model')
|
||||||
@ -151,7 +176,14 @@ if ($step == 2 && $action == 'select_model')
|
|||||||
$result = $objexport->fetch($exportmodelid);
|
$result = $objexport->fetch($exportmodelid);
|
||||||
if ($result > 0)
|
if ($result > 0)
|
||||||
{
|
{
|
||||||
$binaire = hexbin($objexport->hexa);
|
$fieldsarray=split(',',$objexport->hexa);
|
||||||
|
$i=1;
|
||||||
|
foreach($fieldsarray as $val)
|
||||||
|
{
|
||||||
|
$array_selected[$val]=$i;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
$_SESSION["export_selected_fields"]=$array_selected;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -219,6 +251,9 @@ if ($step == 1 || ! $datatoexport)
|
|||||||
print '</table>';
|
print '</table>';
|
||||||
|
|
||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
|
if ($mesg) print $mesg;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($step == 2 && $datatoexport)
|
if ($step == 2 && $datatoexport)
|
||||||
@ -254,23 +289,23 @@ if ($step == 2 && $datatoexport)
|
|||||||
print '<tr><td width="25%">'.$langs->trans("DatasetToExport").'</td>';
|
print '<tr><td width="25%">'.$langs->trans("DatasetToExport").'</td>';
|
||||||
print '<td>'.$objexport->array_export_label[0].'</td></tr>';
|
print '<td>'.$objexport->array_export_label[0].'</td></tr>';
|
||||||
|
|
||||||
|
print '</table>';
|
||||||
|
print '<br>';
|
||||||
|
|
||||||
// Liste déroulante des modéles d'export
|
// Liste déroulante des modéles d'export
|
||||||
print '<tr><td width="25%">'.$langs->trans("ExportModel").'</td>';
|
|
||||||
print '<form action="export.php" method="post">';
|
print '<form action="export.php" method="post">';
|
||||||
print '<input type="hidden" name="action" value="select_model">';
|
print '<input type="hidden" name="action" value="select_model">';
|
||||||
print '<input type="hidden" name="step" value="2">';
|
print '<input type="hidden" name="step" value="2">';
|
||||||
print '<input type="hidden" name="datatoexport" value="'.$datatoexport.'">';
|
print '<input type="hidden" name="datatoexport" value="'.$datatoexport.'">';
|
||||||
print '<td>';
|
print '<table><tr><td>';
|
||||||
|
print $langs->trans("SelectExportFields");
|
||||||
|
print '</td><td>';
|
||||||
$html->select_export_model($exportmodelid,'exportmodelid',$datatoexport,1);
|
$html->select_export_model($exportmodelid,'exportmodelid',$datatoexport,1);
|
||||||
print '<input type="submit" class="button" value="'.$langs->trans("Select").'">';
|
print '<input type="submit" class="button" value="'.$langs->trans("Select").'">';
|
||||||
print '</td></form></tr>';
|
print '</td></tr></table>';
|
||||||
|
print '</form>';
|
||||||
|
|
||||||
|
|
||||||
print '</table>';
|
|
||||||
print '<br>';
|
|
||||||
|
|
||||||
print $langs->trans("SelectExportFields").'<br>';
|
|
||||||
|
|
||||||
print '<table class="noborder" width="100%">';
|
print '<table class="noborder" width="100%">';
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td>'.$langs->trans("Entities").'</td>';
|
print '<td>'.$langs->trans("Entities").'</td>';
|
||||||
@ -298,7 +333,6 @@ if ($step == 2 && $datatoexport)
|
|||||||
$var=!$var;
|
$var=!$var;
|
||||||
print "<tr $bc[$var]>";
|
print "<tr $bc[$var]>";
|
||||||
|
|
||||||
$modelchoice = substr($binaire,$i,1);
|
|
||||||
$i++;
|
$i++;
|
||||||
|
|
||||||
$entity=$objexport->array_export_entities[0][$code];
|
$entity=$objexport->array_export_entities[0][$code];
|
||||||
@ -306,18 +340,12 @@ if ($step == 2 && $datatoexport)
|
|||||||
$entitylang=$entitytolang[$entity]?$entitytolang[$entity]:$entity;
|
$entitylang=$entitytolang[$entity]?$entitytolang[$entity]:$entity;
|
||||||
|
|
||||||
print '<td>'.img_object('',$entityicon).' '.$langs->trans($entitylang).'</td>';
|
print '<td>'.img_object('',$entityicon).' '.$langs->trans($entitylang).'</td>';
|
||||||
if (isset($array_selected[$code]) && $array_selected[$code] || $modelchoice == 1)
|
if ((isset($array_selected[$code]) && $array_selected[$code]) || $modelchoice == 1)
|
||||||
{
|
{
|
||||||
// Champ sélectionné
|
// Champ sélectionné
|
||||||
print '<td> </td>';
|
print '<td> </td>';
|
||||||
print '<td><a href="'.$_SERVER["PHP_SELF"].'?step=2&datatoexport='.$datatoexport.'&action=unselectfield&field='.$code.'">'.img_left().'</a></td>';
|
print '<td><a href="'.$_SERVER["PHP_SELF"].'?step=2&datatoexport='.$datatoexport.'&action=unselectfield&field='.$code.'">'.img_left().'</a></td>';
|
||||||
print '<td>'.$langs->trans($label).' ('.$code.')</td>';
|
print '<td>'.$langs->trans($label).' ('.$code.')</td>';
|
||||||
if ($modelchoice == 1)
|
|
||||||
{
|
|
||||||
$array_selected[$code]=sizeof($array_selected)+1;
|
|
||||||
$_SESSION["export_selected_fields"]=$array_selected;
|
|
||||||
}
|
|
||||||
|
|
||||||
$bit=1;
|
$bit=1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -337,6 +365,8 @@ if ($step == 2 && $datatoexport)
|
|||||||
|
|
||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
|
if ($mesg) print $mesg;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Barre d'action
|
* Barre d'action
|
||||||
*
|
*
|
||||||
@ -345,21 +375,11 @@ if ($step == 2 && $datatoexport)
|
|||||||
|
|
||||||
if (sizeof($array_selected))
|
if (sizeof($array_selected))
|
||||||
{
|
{
|
||||||
print '<form action="export.php" method="post">';
|
|
||||||
print '<input type="hidden" name="action" value="add">';
|
|
||||||
print '<input type="hidden" name="step" value="2">';
|
|
||||||
print '<input type="hidden" name="datatoexport" value="'.$datatoexport.'">';
|
|
||||||
print '<input type="hidden" name="hexa" value="'.$hexa.'">';
|
|
||||||
print '<table class="noborder" width="100%"><tr>';
|
|
||||||
print '<td><input name="export_name" size="20" value="">';
|
|
||||||
print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
|
|
||||||
print '</form>';
|
|
||||||
print '<a class="butAction" href="export.php?step=3&datatoexport='.$datatoexport.'">'.$langs->trans("NextStep").'</a>';
|
print '<a class="butAction" href="export.php?step=3&datatoexport='.$datatoexport.'">'.$langs->trans("NextStep").'</a>';
|
||||||
print '</td></tr>';
|
|
||||||
print '</table>';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($step == 3 && $datatoexport)
|
if ($step == 3 && $datatoexport)
|
||||||
@ -455,8 +475,37 @@ if ($step == 3 && $datatoexport)
|
|||||||
|
|
||||||
print '</table>';
|
print '</table>';
|
||||||
|
|
||||||
|
// Bouton exports profils
|
||||||
|
if (sizeof($array_selected))
|
||||||
|
{
|
||||||
|
print '<br>';
|
||||||
|
print $langs->trans("SaveExportModel");
|
||||||
|
|
||||||
|
print '<form class="nocellnopadd" action="export.php" method="post">';
|
||||||
|
print '<input type="hidden" name="action" value="add_export_model">';
|
||||||
|
print '<input type="hidden" name="step" value="'.$step.'">';
|
||||||
|
print '<input type="hidden" name="datatoexport" value="'.$datatoexport.'">';
|
||||||
|
print '<input type="hidden" name="hexa" value="'.$hexa.'">';
|
||||||
|
|
||||||
|
print '<table class="noborder" width="100%">';
|
||||||
|
print '<tr class="liste_titre">';
|
||||||
|
print '<td>'.$langs->trans("ExportModelName").'</td>';
|
||||||
|
print '<td> </td>';
|
||||||
|
print '</tr>';
|
||||||
|
$var=false;
|
||||||
|
print '<tr '.$bc[$var].'>';
|
||||||
|
print '<td><input name="export_name" size="32" value=""></td><td>';
|
||||||
|
print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
|
||||||
|
print '</td></tr>';
|
||||||
|
print '</table>';
|
||||||
|
print '</form>';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
|
if ($mesg) print $mesg;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Barre d'action
|
* Barre d'action
|
||||||
*
|
*
|
||||||
@ -469,6 +518,7 @@ if ($step == 3 && $datatoexport)
|
|||||||
}
|
}
|
||||||
|
|
||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($step == 4 && $datatoexport)
|
if ($step == 4 && $datatoexport)
|
||||||
|
|||||||
@ -3,7 +3,10 @@ ExportsArea=Exports area
|
|||||||
NewExport=New export
|
NewExport=New export
|
||||||
ExportableDatas=Exportable dataset
|
ExportableDatas=Exportable dataset
|
||||||
SelectExportDataSet=Choose dataset you want to export...
|
SelectExportDataSet=Choose dataset you want to export...
|
||||||
SelectExportFields=Choose fields you want to export...
|
SelectExportFields=Choose fields you want to export, or select a predefined export profil
|
||||||
|
SaveExportModel=Save this export profile if you plan to reuse it later...
|
||||||
|
ExportModelName=Export profile name
|
||||||
|
ExportModelSaved=Export profile saved under name <b>%s</b>.
|
||||||
ExportableFields=Exportable fields
|
ExportableFields=Exportable fields
|
||||||
ExportedFields=Exported fields
|
ExportedFields=Exported fields
|
||||||
DatasetToExport=Dataset to export
|
DatasetToExport=Dataset to export
|
||||||
|
|||||||
@ -3,7 +3,10 @@ ExportsArea=Espace exports
|
|||||||
NewExport=Nouvel export
|
NewExport=Nouvel export
|
||||||
ExportableDatas=Lot de données exportables
|
ExportableDatas=Lot de données exportables
|
||||||
SelectExportDataSet=Choisissez un lot prédéfini de données que vous désirez exporter...
|
SelectExportDataSet=Choisissez un lot prédéfini de données que vous désirez exporter...
|
||||||
SelectExportFields=Choisissez les champs à exporter...
|
SelectExportFields=Choisissez les champs à exporter, ou choisissez un profil d'export prédéfini
|
||||||
|
SaveExportModel=Enregistrer ce profil d'export si vous désirez le réutiliser utlétieurement...
|
||||||
|
ExportModelName=Nom du profil d'export
|
||||||
|
ExportModelSaved=Profil d'export sauvé sous le nom <b>%s</b>.
|
||||||
ExportableFields=Champs exportables
|
ExportableFields=Champs exportables
|
||||||
ExportedFields=Champs à exporter
|
ExportedFields=Champs à exporter
|
||||||
DatasetToExport=Lot de données à exporter
|
DatasetToExport=Lot de données à exporter
|
||||||
|
|||||||
@ -916,7 +916,9 @@ create table llx_export_model
|
|||||||
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||||
label varchar(50) NOT NULL,
|
label varchar(50) NOT NULL,
|
||||||
type varchar(20) NOT NULL,
|
type varchar(20) NOT NULL,
|
||||||
field varchar(20) NOT NULL
|
field text
|
||||||
)type=innodb;
|
)type=innodb;
|
||||||
|
|
||||||
|
ALTER table llx_export_model add fk_user integer DEFAULT 0 NOT NULL after rowid;
|
||||||
|
|
||||||
ALTER TABLE llx_export_model ADD UNIQUE uk_export_model (label);
|
ALTER TABLE llx_export_model ADD UNIQUE uk_export_model (label);
|
||||||
@ -26,7 +26,8 @@
|
|||||||
create table llx_export_model
|
create table llx_export_model
|
||||||
(
|
(
|
||||||
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
fk_user integer DEFAULT 0 NOT NULL,
|
||||||
label varchar(50) NOT NULL,
|
label varchar(50) NOT NULL,
|
||||||
type varchar(20) NOT NULL,
|
type varchar(20) NOT NULL,
|
||||||
field varchar(20) NOT NULL
|
field text NOT NULL
|
||||||
)type=innodb;
|
)type=innodb;
|
||||||
Loading…
Reference in New Issue
Block a user