= 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; } } } ]]>