************************************************************************************************************ * Trouve : trouve le nom d'un commune ou d'un canton de la région centre en indiquant son code * * Version 1.1: 16 aout 2004 * * Jean-benoit Hardouin, Observatoire Régional de la Santé du Centre - Orléans - France * jean-benoit.hardouin@neuf.fr * * Copyright 2004 Jean-Benoit Hardouin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * ************************************************************************************************************ program define trouve,rclass version 7.0 syntax anything local nbarg:word count `anything' capture su * if _rc==0 { tempfile savetrouve qui save `savetrouve',replace } preserve numlist "`anything'" local list `r(numlist)' foreach i of numlist `list' { if (`i'>1800&`i'<1900)|(`i'>2800&`i'<2900)|(`i'>3600&`i'<3800)|(`i'>4100&`i'<4200)|(`i'>4500&`i'<4600) { qui use "C:\ado\PERSONAL\files\cantons" ,clear qui su id if codepct==`i' local tmp=r(min) local tmp=nompct[`tmp'] if "`tmp'"!="" { di in green "`i' (canton):" in yellow " `tmp'" return local trouve`i' "Canton : `tmp'" } else { di in red "Il n'y a pas de canton avec ce numero (`i') dans la region Centre" } } else if `i'>2400&`i'<2500 { local erreur=0 if `i'==2411 {local name Bourges} else if `i'==2412 {local name Vierzon} else if `i'==2413 {local name Saint-Amand-Montrond} else if `i'==2414 {local name Aubigny-sur-Nère} else if `i'==2421 {local name Chartres} else if `i'==2422 {local name Dreux} else if `i'==2423 {local name Chateaudun} else if `i'==2424 {local name Nogent le Rotrou} else if `i'==2431 {local name Chateauroux} else if `i'==2432 {local name Le Blanc} else if `i'==2433 {local name Issoudun} else if `i'==2434 {local name La Chatre} else if `i'==2441 {local name Tours} else if `i'==2442 {local name Amboise} else if `i'==2443 {local name Loches} else if `i'==2444 {local name Chinon} else if `i'==2451 {local name Blois} else if `i'==2452 {local name Vendome} else if `i'==2453 {local name Romoranthin-Lanthenay} else if `i'==2461 {local name Orleans} else if `i'==2462 {local name Montargis} else if `i'==2463 {local name Pithiviers} else if `i'==2464 {local name Gien} else { di in red "Il n'y a pas de zone d'emploi avec ce numero (`i') dans la region Centre" local erreur=1 } if `erreur'==0 { di in green "`i' (zone d'emploi):" in yellow " `name'" return local trouve`i' "Zone d'emploi : `name'" } } else if `i'>10000&`i'<100000 { qui use "C:\ado\PERSONAL\files\communes" ,clear qui su id if codecom==`i' local tmp=r(min) local tmp=nomcom[`tmp'] if "`tmp'"!="" { di in green "`i' (commune):" in yellow " `tmp'" return local trouve`i' "Commune : `tmp'" } else { di in red "Il n'y a pas de commune avec ce numero (`i') dans la region Centre" } } else { di in red "Ce code n'est pas utilisable" } } restore,not qui drop _all if "`savetrouve'"!="" { qui use `savetrouve' } end