= 0) {
result = filterListItem(item, list_collection_search_mots)
if (result == true) {
if (refSearch_GUI.selected == true) {
if (item.hasOwnProperty("@nbref")) {
if (Number(item.@nbref.toString()) <= 0) {
if (item.hasOwnProperty("@nbref2")) {
if (Number(item.@nbref2.toString()) <= 0) {
result = false;
}
}
else {
result = false;
}
}
}
}
}
}
return result;
}
public function filterListItem(item:XML, mots:Array):Boolean {
var result:Boolean = true;
if (mots.length > 0) {
result = false
var fullText:String = ""
for each (var attributeNode:XML in item.@*) {
var attributeName:String = attributeNode.name().toString()
var attributeValue:String = attributeNode.toString()
if (attributeName != "oid" && attributeValue.toString() != "") {
fullText = fullText + ' ' + attributeValue.toUpperCase()
}
}
var resultMot:Boolean = true
for each (var mot:String in mots) {
if (fullText.indexOf(mot) < 0) {
resultMot = false
break;
}
}
if (resultMot) {
result = true
}
}
return result;
}
public function getRecord():void {
if (recordUpdated == true) {
return;
}
if (list_GUI.selectedIndex < 0) {
return;
}
currendRecordItem = list_GUI.selectedItem as XML;
showDetail();
}
public function addRecord():void {
if (currendRecordItem == null) {
if (tableCode == "TAR") {
currendRecordItem = new XML()
currendRecordItem.@oid = "-1"
currendRecordItem.@texte = ""
currendRecordItem.@priorite = "5000"
currendRecordItem.@type_article_cti = "0"
currendRecordItem.@liste_compte = ""
currendRecordItem.@liste_type_article = ""
currendRecordItem.@liste_famille = ""
currendRecordItem.@liste_sous_famille = ""
currendRecordItem.@liste_categorie = ""
currendRecordItem.@liste_sous_categorie = ""
currendRecordItem.@liste_article = ""
showDetail()
}
}
}
public function showDetail():void {
var i:Number;
var item:XML;
if (currendRecordItem == null) {
return;
}
oid_GUI.text = currendRecordItem.@oid.toString();
nbref_GUI.text = currendRecordItem.@nbref.toString();
code_GUI.text = currendRecordItem.@code.toString();
texte_GUI.text = currendRecordItem.@texte.toString();
texte_court_GUI.text = currendRecordItem.@texte_court.toString();
complement_GUI.text = currendRecordItem.@complement.toString();
code_original_GUI.text = currendRecordItem.@code_original.toString();
if (tableCode == 'TYA') {
TYA_defaut_selon_GUI.selectedIndex = 0;
if (currendRecordItem.@defaut_selon.toString() == 'CPT') {
TYA_defaut_selon_GUI.selectedIndex = 1
}
if (currendRecordItem.@defaut_selon.toString() == 'CAT') {
TYA_defaut_selon_GUI.selectedIndex = 2
}
TYA_defaut_selon_codes_GUI.text = currendRecordItem.@defaut_selon_codes.toString()
}
if (tableCode == 'TYM') {
TYM_particularite_inverser_signe_GUI.selectedIndex = (currendRecordItem.@particularite_inverser_signe.toString() == '1') ? 1 : 0;
TYM_sens_force_GUI.selectedIndex = 0
if (currendRecordItem.@sens_force.toString() == 'E') {
TYM_sens_force_GUI.selectedIndex = 1
}
if (currendRecordItem.@sens_force.toString() == 'S') {
TYM_sens_force_GUI.selectedIndex = 2
}
}
if (tableCode == 'ART') {
if (currendRecordItem.@gere_en_stock.toString() == '0') {
ART_gere_en_stock_GUI.selected = false
}
else {
ART_gere_en_stock_GUI.selected = true
}
var ART_cacic_XML:XMLList = ART_ARRAY_RA1_XML.RECORD.(@oid == currendRecordItem.@cacic_id.toString());
if (ART_cacic_XML.length() > 0) {
ART_cacic_code_GUI.text = ART_cacic_XML[0].@code;
ART_cacic_texte_GUI.text = ART_cacic_XML[0].@texte;
ART_cacic_id_GUI.text = ART_cacic_XML[0].@oid;
}
else {
ART_cacic_code_GUI.text = "";
ART_cacic_texte_GUI.text = "?";
ART_cacic_id_GUI.text = "0";
}
var ART_rfcti_XML:XMLList = ART_ARRAY_RA9_XML.RECORD.(@oid == currendRecordItem.@rfcti_id.toString());
if (ART_rfcti_XML.length() > 0) {
ART_rfcti_code_GUI.text = ART_rfcti_XML[0].@code;
ART_rfcti_texte_GUI.text = ART_rfcti_XML[0].@texte;
ART_rfcti_id_GUI.text = ART_rfcti_XML[0].@oid;
}
else {
ART_rfcti_code_GUI.text = "";
ART_rfcti_texte_GUI.text = "?";
ART_rfcti_id_GUI.text = "0";
}
ART_rfcti_id_GUI.text = currendRecordItem.@rfcti_id.toString()
}
if (tableCode == 'FOU') {
setSelectedIndex(FOU_fusionner_vers_fournisseur_id_GUI, currendRecordItem.@fusionner_vers_fournisseur_id.toString(), 'oid');
var FOU_cacic_XML:XMLList = FOU_ARRAY_RF1_XML.RECORD.(@oid == currendRecordItem.@cacic_id.toString());
if (FOU_cacic_XML.length() > 0) {
FOU_cacic_code_GUI.text = FOU_cacic_XML[0].@code;
FOU_cacic_texte_GUI.text = FOU_cacic_XML[0].@texte;
FOU_cacic_id_GUI.text = FOU_cacic_XML[0].@oid;
}
else {
FOU_cacic_code_GUI.text = "";
FOU_cacic_texte_GUI.text = "?";
FOU_cacic_id_GUI.text = "0";
}
var FOU_rfcti_XML:XMLList = FOU_ARRAY_RF9_XML.RECORD.(@oid == currendRecordItem.@rfcti_id.toString());
if (FOU_rfcti_XML.length() > 0) {
FOU_rfcti_code_GUI.text = FOU_rfcti_XML[0].@code;
FOU_rfcti_texte_GUI.text = FOU_rfcti_XML[0].@texte;
FOU_rfcti_id_GUI.text = FOU_rfcti_XML[0].@oid;
}
else {
FOU_rfcti_code_GUI.text = "";
FOU_rfcti_texte_GUI.text = "?";
FOU_rfcti_id_GUI.text = "0";
}
}
if (tableCode == 'RA9' || tableCode == 'RF9') {
RXX_regroupes_oids_GUI.text = currendRecordItem.@rfoids.toString();
if (RXX_a_regrouper_GUI.dataProvider != null) {
RXX_a_regrouper_GUI.dataProvider.filterFunction = null
RXX_a_regrouper_GUI.dataProvider.refresh()
}
RXX_a_regrouper_textSearch_GUI.text = texte_GUI.text.substr(0,5);
if (RXX_regroupes_GUI.dataProvider.filterFunction == null) {
RXX_regroupes_GUI.dataProvider.filterFunction = RXX_regroupes_filterFunction
}
RXX_regroupes_GUI.dataProvider.refresh();
RXX_a_regrouper_searchChange()
}
if (tableCode == "DIV") {
valeur_GUI.text = currendRecordItem.@valeur.toString();
show_info_module_GUI.selected = (currendRecordItem.show_info_module.toString() == "1");
}
if (tableCode == 'TAR') {
TAR_priorite_GUI.text = currendRecordItem.@priorite.toString();
setSelectedIndex(TAR_type_article_cti_id_GUI, currendRecordItem.@type_article_cti_id.toString(), 'oid');
TAR_liste_type_article_GUI.text = currendRecordItem.@liste_type_article.toString();
TAR_liste_compte_GUI.text = currendRecordItem.@liste_compte.toString();
TAR_liste_famille_GUI.text = currendRecordItem.@liste_famille.toString();
TAR_liste_sous_famille_GUI.text = currendRecordItem.@liste_sous_famille.toString();
TAR_liste_categorie_GUI.text = currendRecordItem.@liste_categorie.toString();
TAR_liste_sous_categorie_GUI.text = currendRecordItem.@liste_sous_categorie.toString();
TAR_liste_article_GUI.text = currendRecordItem.@liste_article.toString();
TAR_Qliste_type_article_GUI.selected = TAR_liste_type_article_GUI.text != "" ? true : false;
TAR_Qliste_compte_GUI.selected = TAR_liste_compte_GUI.text != "" ? true : false;
TAR_Qliste_famille_GUI.selected = TAR_liste_famille_GUI.text != "" ? true : false;
TAR_Qliste_sous_famille_GUI.selected = TAR_liste_sous_famille_GUI.text != "" ? true : false;
TAR_Qliste_categorie_GUI.selected = TAR_liste_categorie_GUI.text != "" ? true : false;
TAR_Qliste_sous_categorie_GUI.selected = TAR_liste_sous_categorie_GUI.text != "" ? true : false;
TAR_Qliste_article_GUI.selected = TAR_liste_article_GUI.text != "" ? true : false;
}
recordUpdated = false;
detailBox_GUI.visible = true;
detailBox_GUI.includeInLayout = true;
}
private function askCancel():void {
if (recordUpdated == false) {
hideRecord();
return;
}
Alert.yesLabel = "OUI";
Alert.noLabel = "NON";
var alert:Alert = Alert.show("Les données ont été changées, désirez vous les annuler ?", title, 3, this, alertClickHandler, question_class);
function alertClickHandler(event:CloseEvent):void {
if (event.detail==Alert.YES) {
hideRecord();
}
}
}
private function hideRecord():void {
detailBox_GUI.visible = false;
detailBox_GUI.includeInLayout = false;
currendRecordItem = null;
recordUpdated = false;
}
private function askDelete():void {
Alert.yesLabel = "OUI";
Alert.noLabel = "NON";
var alert:Alert = Alert.show("Désirez vous vraiment supprimer " + texte_GUI.text + " ?", title, 3, this, alertClickHandler, question_class);
function alertClickHandler(event:CloseEvent):void {
if (event.detail==Alert.YES) {
deleteRecord()
}
}
}
public function deleteRecord():void {
updateRecord("delete");
}
public function copyRecord():void {
updateRecord("copy");
}
public function saveRecord():void {
updateRecord("save");
}
public function updateRecord(action:String):void {
var urlVariables:URLVariables = new URLVariables()
urlVariables.tableName = tableName;
urlVariables.action = action;
urlVariables.softCode = softCode;
var recordNode:XML = new XML();
recordNode.@oid = oid_GUI.text;
recordNode.@code = code_GUI.text;
recordNode.@texte = texte_GUI.text;
recordNode.@texte_court = texte_court_GUI.text;
recordNode.@code_original = code_original_GUI.text;
recordNode.@show_info_module = (show_info_module_GUI.selected ? "1" : "0");
recordNode.@valeur = valeur_GUI.text;
recordNode.@description = complement_GUI.text;
if (tableCode == 'ART') {
if (ART_gere_en_stock_GUI.selected == true) {
recordNode.@gere_en_stock = "1";
}
else {
recordNode.@gere_en_stock = "0";
}
recordNode.@cacic_id = ART_cacic_id_GUI.text;
recordNode.@rfcti_id = ART_rfcti_id_GUI.text;
}
if (tableCode == 'FOU') {
recordNode.@fusionner_vers_fournisseur_id = FOU_fusionner_vers_fournisseur_id_GUI.selectedItem.oid;
recordNode.@cacic_id = FOU_cacic_id_GUI.text;
recordNode.@rfcti_id = FOU_rfcti_id_GUI.text;
}
if (tableCode == 'RA9') {
recordNode.@rfoids = RXX_regroupes_oids_GUI.text;
}
if (tableCode == 'RF9') {
recordNode.@rfoids = RXX_regroupes_oids_GUI.text;
}
if (tableCode == 'TYM') {
recordNode.@particularite_inverser_signe = TYM_particularite_inverser_signe_GUI.selectedIndex.toString();
recordNode.@sens_force = TYM_sens_force_GUI.selectedItem.data;
}
if (tableCode == 'TYA') {
recordNode.@defaut_selon = TYA_defaut_selon_GUI.selectedItem.data;
recordNode.@defaut_selon_codes = TYA_defaut_selon_codes_GUI.text
}
if (tableCode == 'TAR') {
recordNode.@priorite = TAR_priorite_GUI.text
recordNode.@type_article_cti_id = TAR_type_article_cti_id_GUI.selectedItem.oid;
recordNode.@liste_type_article = TAR_liste_type_article_GUI.text
recordNode.@liste_compte = TAR_liste_compte_GUI.text
recordNode.@liste_famille = TAR_liste_famille_GUI.text
recordNode.@liste_sous_famille = TAR_liste_sous_famille_GUI.text
recordNode.@liste_categorie = TAR_liste_categorie_GUI.text
recordNode.@liste_sous_categorie = TAR_liste_sous_categorie_GUI.text
recordNode.@liste_article = TAR_liste_article_GUI.text
}
urlVariables.recordNode = recordNode.toXMLString();
CTI_Utilitaires.startRequestHTTP("modules/eco/php/httpService_tablesManager_setData.php",urlVariables,exec,true,this.parentApplication)
function exec(resultatService:XML):void {
var returnCode:String = resultatService.@returnCode;
var returnTexte:String = resultatService.@returnTexte;
if (returnCode == "KO") {
CTI_Utilitaires.alert_error("Mise à jour", "Mise à jour non effeectuée : " + returnTexte);
}
else {
var updatedOids:String = resultatService.@updatedOids.toString();
getData(false,updatedOids);
currendRecordItem = null;
recordUpdated = false;
detailBox_GUI.visible = false;
detailBox_GUI.includeInLayout = false;
}
}
}
public function TAR_execute_rules():void {
var urlVariables:URLVariables = new URLVariables()
urlVariables.tableName = tableName;
urlVariables.action = "exec";
urlVariables.softCode = softCode;
var recordNode:XML = new XML();
urlVariables.recordNode = recordNode.toXMLString();
CTI_Utilitaires.startRequestHTTP("modules/eco/php/httpService_tablesManager_setData.php",urlVariables,exec,true,this.parentApplication)
function exec(resultatService:XML):void {
var returnCode:String = resultatService.@returnCode;
var returnTexte:String = resultatService.@returnTexte;
if (returnCode == "KO") {
CTI_Utilitaires.alert_error("Mise à jour", "Mise à jour non effeectuée : " + returnTexte);
}
else {
}
}
}
public function print():void {
var printReport:CTI_Print = new CTI_Print();
if (printReport.start("ECO_TablesManager", titlePrint) == false) {
return;
}
printReport.addDataGrid(list_GUI)
printReport.print();
}
public function exportExcel():void {
var xml:XML = new XML();
var ongletNode:XML;
var similiTabNode:XML;
var selectionsNode:XML;
var datagridNode:XML;
var columnNode:XML;
var dataNode:XML;
var rowNode:XML;
xml.@viewName = this.viewName;
xml.@title = this.title;
selectionsNode = new XML();
selectionsNode.displayText = "";
if (refSearch_GUI.selected == true) {
selectionsNode.@displayText = selectionsNode.displayText + "Uniquement les codes référencés. ";
}
if (textSearch_GUI.text != "") {
selectionsNode.@displayText = selectionsNode.displayText + "(Filtre : " + textSearch_GUI.text + ") ";
}
xml.appendChild(selectionsNode);
ongletNode = new XML();
ongletNode.@excelLabel = tableCode;
xml.appendChild(ongletNode);
similiTabNode = new XML();
similiTabNode.@excelLabel = "Liste";
ongletNode.appendChild(similiTabNode);
datagridNode = new XML();
datagridNode.@total = "false";
ongletNode.appendChild(datagridNode);
for each (var column:DataGridColumn in list_GUI.columns) {
columnNode = new XML();
columnNode.@dataField = column.dataField;
columnNode.@headerText = column.headerText;
columnNode.@type = "Char";
columnNode.@textAlign = column.getStyle("textAlign");
datagridNode.appendChild(columnNode);
}
dataNode = new XML();
similiTabNode.appendChild(dataNode);
for each (var itemNode:XML in list_collection) {
if (itemNode.@oid != "-1") {
rowNode = new XML(
)
var c:int = 0;
for each (column in list_GUI.columns) {
c++;
rowNode.@["c" + c.toString()] = itemNode[column.dataField]
}
dataNode.appendChild(rowNode);
}
}
CTI_ExcelUtilitaires.exportExcel(xml);
}
public function exportPDF():void {
var xml:XML = new XML();
var ongletNode:XML;
var selectionsNode:XML;
var datagridNode:XML;
var columnNode:XML;
var dataNode:XML;
var rowNode:XML;
xml.@viewName = this.viewName;
xml.@title = this.title;
selectionsNode = new XML();
selectionsNode.displayText = "";
if (refSearch_GUI.selected == true) {
selectionsNode.displayText = selectionsNode.displayText + "Uniquement les codes référencés. ";
}
if (textSearch_GUI.text != "") {
selectionsNode.displayText = selectionsNode.displayText + "(Filtre : " + textSearch_GUI.text + ") ";
}
xml.appendChild(selectionsNode);
ongletNode = new XML();
ongletNode.@excelLabel = tableCode;
xml.appendChild(ongletNode);
datagridNode = new XML();
datagridNode.@total = "false";
ongletNode.appendChild(datagridNode);
for each (var column:DataGridColumn in list_GUI.columns) {
columnNode = new XML();
columnNode.@dataField = column.dataField;
columnNode.@headerText = column.headerText;
columnNode.@type = "Char";
columnNode.@textAlign = column.getStyle("textAlign");
datagridNode.appendChild(columnNode);
}
dataNode = new XML();
ongletNode.appendChild(dataNode);
for each (var itemNode:XML in list_collection) {
if (itemNode.@oid != "-1") {
rowNode = new XML(
)
var c:int = 0;
for each (column in list_GUI.columns) {
c++;
rowNode.@["c" + c.toString()] = itemNode[column.dataField]
}
dataNode.appendChild(rowNode);
}
}
CTI_PDFUtilitaires.exportPDF(xml);
xml = null;
}
public function new_import_upload():void
{
new_import_fileToUpload.addEventListener(Event.SELECT, new_import_fileToUpload_onSelect);
new_import_fileToUpload.browse();
}
private function new_import_fileToUpload_onSelect(event:Event):void
{
try
{
new_import_fileUpload()
}
catch (err:Error)
{
}
}
private function new_import_fileUpload():void
{
var urlVariables:URLVariables = new URLVariables();
urlVariables.tableName = tableName;
urlVariables.action = "upload";
var recordNode:XML = new XML();
recordNode.@oid = oid_GUI.text;
recordNode.@code = code_GUI.text;
recordNode.@texte = texte_GUI.text;
recordNode.@texte_court = texte_court_GUI.text;
recordNode.@code_original = code_original_GUI.text;
urlVariables.recordNode = recordNode.toXMLString();
urlVariables.importFile = new_import_fileToUpload.name;
CTI_Utilitaires.startUploadHTTP(new_import_fileToUpload, "modules/eco/php/httpService_tablesManager_setData.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
if (resultatService.@returnCode.toString() == "OK")
{
getData();
detailBox_GUI.visible = false;
detailBox_GUI.includeInLayout = false;
currendRecordItem = null;
recordUpdated = false;
}
else
{
CTI_Utilitaires.alert_error("Envoi fichier " + new_import_fileToUpload.name + " au serveur", resultatService.@returnTexte.toString())
}
}
}
private function ART_cacic_changeEvent(event:*):void {
recordUpdated = true;
var ART_cacic_XML:XMLList = ART_ARRAY_RA1_XML.RECORD.(@code == ART_cacic_code_GUI.text);
if (ART_cacic_XML.length() > 0) {
ART_cacic_texte_GUI.text = ART_cacic_XML[0].@texte;
ART_cacic_id_GUI.text = ART_cacic_XML[0].@oid;
}
else {
ART_cacic_texte_GUI.text = "?";
ART_cacic_id_GUI.text = "0";
}
}
private function ART_rfcti_changeEvent(event:*):void {
recordUpdated = true;
var ART_rfcti_XML:XMLList = ART_ARRAY_RA9_XML.RECORD.(@code == ART_rfcti_code_GUI.text);
if (ART_rfcti_XML.length() > 0) {
ART_rfcti_texte_GUI.text = ART_rfcti_XML[0].@texte;
ART_rfcti_id_GUI.text = ART_rfcti_XML[0].@oid;
}
else {
ART_rfcti_texte_GUI.text = "?";
ART_rfcti_id_GUI.text = "0";
}
}
private function FOU_cacic_changeEvent(event:*):void {
recordUpdated = true;
var FOU_cacic_XML:XMLList = FOU_ARRAY_RF1_XML.RECORD.(@code == FOU_cacic_code_GUI.text);
if (FOU_cacic_XML.length() > 0) {
FOU_cacic_texte_GUI.text = FOU_cacic_XML[0].@texte;
FOU_cacic_id_GUI.text = FOU_cacic_XML[0].@oid;
}
else {
FOU_cacic_texte_GUI.text = "?";
FOU_cacic_id_GUI.text = "0";
}
}
private function FOU_rfcti_changeEvent(event:*):void {
recordUpdated = true;
var FOU_rfcti_XML:XMLList = FOU_ARRAY_RF9_XML.RECORD.(@code == FOU_rfcti_code_GUI.text);
if (FOU_rfcti_XML.length() > 0) {
FOU_rfcti_texte_GUI.text = FOU_rfcti_XML[0].@texte;
FOU_rfcti_id_GUI.text = FOU_rfcti_XML[0].@oid;
}
else {
FOU_rfcti_texte_GUI.text = "?";
FOU_rfcti_id_GUI.text = "0";
}
}
// Regroupement des fournisseurs reference CTI
private function RXX_a_regrouper_searchChange():void {
a_regrouper_search_mots = getMots(RXX_a_regrouper_textSearch_GUI.text)
if (RXX_a_regrouper_GUI.dataProvider.filterFunction == null) {
RXX_a_regrouper_GUI.dataProvider.filterFunction = RXX_a_regrouper_filterFunction
}
RXX_a_regrouper_GUI.dataProvider.refresh()
}
// Filter function
public function RXX_a_regrouper_filterFunction(item:XML):Boolean
{
var result:Boolean = true;
result = filterListItem(item, a_regrouper_search_mots)
if (result == true && currendRecordItem != null) {
if (item.@oid.toString() == currendRecordItem.@oid.toString()) {
result=false;
}
}
if (result == true) {
if (RXX_regroupes_oids_GUI.text.indexOf("," + item.@oid.toString() + ",") >= 0) {
result=false;
}
}
return result;
}
public function RXX_regroupes_filterFunction(item:XML):Boolean
{
var result:Boolean = true;
if (result == true) {
if (RXX_regroupes_oids_GUI.text.indexOf("," + item.@oid.toString() + ",") < 0) {
result=false;
}
}
return result;
}
// Ajout dans regroupes
private function RXX_regroupes_add():void {
for each (var item:XML in RXX_a_regrouper_GUI.selectedItems) {
RXX_regroupes_oids_GUI.text = RXX_regroupes_oids_GUI.text + item.@oid + ","
}
RXX_a_regrouper_searchChange()
RXX_regroupes_GUI.dataProvider.refresh();
recordUpdated = true
}
// enlever dans regroupes
private function RXX_regroupes_remove():void {
for each (var item:XML in RXX_regroupes_GUI.selectedItems) {
var regexp:RegExp = new RegExp("," + item.@oid + ",", "g");
RXX_regroupes_oids_GUI.text = RXX_regroupes_oids_GUI.text.replace(regexp, ",");
}
RXX_a_regrouper_searchChange()
RXX_regroupes_GUI.dataProvider.refresh();
recordUpdated = true
}
private function setSelectedIndex(cb:Object, str:String, field:String='data'):void {
cb.selectedIndex = 0
for (var idx:int = 0, len:int = cb.dataProvider.length; idx < len; idx++) {
if (cb.dataProvider.getItemAt(idx)[field] == str) {
cb.selectedIndex = idx;
}
}
}
]]>