Faxtomail-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
February 2014
- 2 participants
- 20 discussions
27 May '14
See <http://ci.codelutin.com/jenkins/job/faxtomail-nightly/1/>
------------------------------------------
[...truncated 117 lines...]
A faxtomail-ui-swing/src/main/filtered-resources/faxtomail.config
A faxtomail-ui-swing/src/main/filtered-resources/log4j.properties
A faxtomail-ui-swing/src/main/resources
A faxtomail-ui-swing/src/main/resources/i18n
A faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties
A faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties
A faxtomail-ui-swing/src/main/resources/META-INF
A faxtomail-ui-swing/src/main/resources/log4j.properties
A faxtomail-ui-swing/src/main/resources/icons
AU faxtomail-ui-swing/src/main/resources/icons/action-reload-ui.png
AU faxtomail-ui-swing/src/main/resources/icons/action-config.png
AU faxtomail-ui-swing/src/main/resources/icons/action-reload-application.png
AU faxtomail-ui-swing/src/main/resources/icons/action-exit.png
AU faxtomail-ui-swing/src/main/resources/icons/action-reload-shortcut.png
A faxtomail-ui-swing/src/main/resources/com
A faxtomail-ui-swing/src/main/resources/com/franciaflex
A faxtomail-ui-swing/src/main/resources/com/franciaflex/faxtomail
A faxtomail-ui-swing/src/main/resources/com/franciaflex/faxtomail/ui
A faxtomail-ui-swing/src/main/resources/com/franciaflex/faxtomail/ui/swing
A faxtomail-ui-swing/pom.xml
A faxtomail-ui-swing/README.txt
A faxtomail-persistence
A faxtomail-persistence/LICENSE.txt
A faxtomail-persistence/src
A faxtomail-persistence/src/test
A faxtomail-persistence/src/test/java
A faxtomail-persistence/src/main
A faxtomail-persistence/src/main/java
A faxtomail-persistence/src/main/java/com
A faxtomail-persistence/src/main/java/com/franciaflex
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/HistoryType.java
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/RessourceClassLoader.java
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/ProgressionModel.java
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfigurationOption.java
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfigurationProvider.java
A faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/FaxToMailConfiguration.java
A faxtomail-persistence/src/main/resources
A faxtomail-persistence/src/main/resources/faxtomail.properties
A faxtomail-persistence/src/main/resources/i18n
A faxtomail-persistence/src/main/resources/i18n/faxtomail-persistence_fr_FR.properties
A faxtomail-persistence/src/main/resources/i18n/faxtomail-persistence_en_GB.properties
A faxtomail-persistence/src/main/resources/META-INF
A faxtomail-persistence/src/main/resources/META-INF/services
A faxtomail-persistence/src/main/resources/META-INF/services/org.nuiton.config.ApplicationConfigProvider
A faxtomail-persistence/src/main/xmi
A faxtomail-persistence/src/main/xmi/faxtomail.properties
AU faxtomail-persistence/src/main/xmi/faxtomail.zargo
A faxtomail-persistence/pom.xml
A faxtomail-persistence/README.txt
A src
A faxtomail-ui-web
A faxtomail-ui-web/LICENSE.txt
A faxtomail-ui-web/src
A faxtomail-ui-web/src/main
A faxtomail-ui-web/src/main/java
A faxtomail-ui-web/src/main/java/com
A faxtomail-ui-web/src/main/java/com/franciaflex
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/FaxToMailApplicationContext.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailActionSupport.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailIllegalAccessException.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/DefaultFaxToMailWebApplicationContext.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailInterceptor.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailSession.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailStrutsObjectFactory.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailEntityNotFoundException.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailNoIdException.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/IndexAction.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java
A faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/FaxToMailApplicationListener.java
A faxtomail-ui-web/src/main/resources
A faxtomail-ui-web/src/main/resources/i18n
A faxtomail-ui-web/src/main/resources/i18n/faxtomail-web_fr_FR.properties
A faxtomail-ui-web/src/main/resources/struts.properties
A faxtomail-ui-web/src/main/resources/shiro.ini
A faxtomail-ui-web/src/main/resources/struts.xml
A faxtomail-ui-web/src/main/resources/validators.xml
A faxtomail-ui-web/src/main/resources/xwork-conversion.properties
A faxtomail-ui-web/src/main/resources/log4j.properties
A faxtomail-ui-web/src/main/webapp
A faxtomail-ui-web/src/main/webapp/WEB-INF
A faxtomail-ui-web/src/main/webapp/WEB-INF/decorators.xml
A faxtomail-ui-web/src/main/webapp/WEB-INF/decorators
A faxtomail-ui-web/src/main/webapp/WEB-INF/decorators/version.jsp
A faxtomail-ui-web/src/main/webapp/WEB-INF/decorators/layout.jsp
A faxtomail-ui-web/src/main/webapp/WEB-INF/content
A faxtomail-ui-web/src/main/webapp/WEB-INF/content/index.jsp
A faxtomail-ui-web/src/main/webapp/WEB-INF/content/admin
A faxtomail-ui-web/src/main/webapp/WEB-INF/content/admin/configuration.jsp
A faxtomail-ui-web/src/main/webapp/WEB-INF/web.xml
A faxtomail-ui-web/src/main/webapp/css
A faxtomail-ui-web/src/main/webapp/css/select2
AU faxtomail-ui-web/src/main/webapp/css/select2/select2-spinner.gif
AU faxtomail-ui-web/src/main/webapp/css/select2/select2.png
A faxtomail-ui-web/src/main/webapp/css/select2/select2.css
AU faxtomail-ui-web/src/main/webapp/css/select2/select2x2.png
A faxtomail-ui-web/src/main/webapp/css/jstree
A faxtomail-ui-web/src/main/webapp/css/jstree/themes
A faxtomail-ui-web/src/main/webapp/css/jstree/themes/default
AU faxtomail-ui-web/src/main/webapp/css/jstree/themes/default/32px.png
A faxtomail-ui-web/src/main/webapp/css/jstree/themes/default/style.css
A faxtomail-ui-web/src/main/webapp/css/jstree/themes/default/style.min.css
AU faxtomail-ui-web/src/main/webapp/css/jstree/themes/default/throbber.gif
AU faxtomail-ui-web/src/main/webapp/css/jstree/themes/default/40px.png
A faxtomail-ui-web/src/main/webapp/css/configuration.css
A faxtomail-ui-web/src/main/webapp/js
A faxtomail-ui-web/src/main/webapp/js/select2
A faxtomail-ui-web/src/main/webapp/js/select2/LICENSE
A faxtomail-ui-web/src/main/webapp/js/select2/select2_locale_fr.js
A faxtomail-ui-web/src/main/webapp/js/select2/select2.min.js
A faxtomail-ui-web/src/main/webapp/js/configuration.js
A faxtomail-ui-web/src/main/webapp/js/jquery.ui.touch.js
A faxtomail-ui-web/src/main/webapp/js/require.js
A faxtomail-ui-web/src/main/webapp/js/jstree
A faxtomail-ui-web/src/main/webapp/js/jstree/jstree.js
A faxtomail-ui-web/src/main/webapp/js/jstree/jstree.min.js
A faxtomail-ui-web/pom.xml
A faxtomail-ui-web/README.txt
A pom.xml
A README.txt
U .
At revision 10
Parsing POMs
Discovered a new module com.franciaflex:faxtomail FaxToMail
Discovered a new module com.franciaflex.faxtomail:faxtomail-persistence FaxToMail :: Persistence
Discovered a new module com.franciaflex.faxtomail:faxtomail-service FaxToMail :: Service
Discovered a new module com.franciaflex.faxtomail:faxtomail-ui-web FaxToMail :: Web
Discovered a new module com.franciaflex.faxtomail:faxtomail-ui-swing FaxToMail :: UI
Modules changed, recalculating dependency graph
[trunk] $ /opt/jdk7/bin/java -Dsettings.security=/var/local/forge/data/codelutin.com/maven/settings-security.xml -Djava.awt.headless=true -cp /var/local/forge/data/codelutin.com/jenkins/plugins/maven-plugin/WEB-INF/lib/maven31-agent-1.4.jar:/opt/maven3/boot/plexus-classworlds-2.5.1.jar:/opt/maven3/conf/logging jenkins.maven3.agent.Maven31Main /opt/maven3 /var/local/forge/exec/tomcat-codelutin.com/webapps/jenkins/WEB-INF/lib/remoting-2.33.jar /var/local/forge/data/codelutin.com/jenkins/plugins/maven-plugin/WEB-INF/lib/maven31-interceptor-1.4.jar /var/local/forge/data/codelutin.com/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.4.jar 54753
<===[JENKINS REMOTING CAPACITY]===> channel started
log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.converters.BooleanConverter).
log4j:WARN Please initialize the log4j system properly.
Executing Maven: -B -f <http://ci.codelutin.com/jenkins/job/faxtomail-nightly/ws/trunk/pom.xml> -s /var/local/forge/data/codelutin.com/maven/settings.xml -e -U clean verify -DperformRelease
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] FaxToMail
[INFO] FaxToMail :: Persistence
[INFO] FaxToMail :: Service
[INFO] FaxToMail :: Web
[INFO] FaxToMail :: UI
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building FaxToMail 0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/repositories/central-releases/org/cod…
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/groups/faxtomail-group/org/codehaus/m…
[INFO] Downloading: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-…
[INFO] Downloaded: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-… (0 B at 0.0 KB/sec)
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/repositories/central-releases/org/cod…
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/groups/faxtomail-group/org/codehaus/m…
[INFO] Downloading: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-parent…
[INFO] Downloaded: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-parent… (0 B at 0.0 KB/sec)
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/repositories/central-releases/org/cod…
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/groups/faxtomail-group/org/codehaus/m…
[INFO] Downloading: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-…
[INFO] Downloaded: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-… (0 B at 0.0 KB/sec)
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ faxtomail ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (ensure-no-container-api) @ faxtomail ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (check-project-files) @ faxtomail ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (check-release-properties) @ faxtomail ---
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] FaxToMail ......................................... FAILURE [3.239s]
[INFO] FaxToMail :: Persistence .......................... SKIPPED
[INFO] FaxToMail :: Service .............................. SKIPPED
[INFO] FaxToMail :: Web .................................. SKIPPED
[INFO] FaxToMail :: UI ................................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.485s
[INFO] Finished at: Sat Feb 15 01:16:29 CET 2014
[INFO] Final Memory: 16M/240M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.3.1:enforce (check-release-properties) on project faxtomail: org.apache.maven.plugins.enforcer.RequireProperty failed with message:
[ERROR] You must set a dbVersion property!
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.3.1:enforce (check-release-properties) on project faxtomail: org.apache.maven.plugins.enforcer.RequireProperty failed with message:
You must set a dbVersion property!
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:317)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152)
at org.jvnet.hudson.maven3.launcher.Maven31Launcher.main(Maven31Launcher.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven31Main.launch(Maven31Main.java:181)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:134)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:69)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:328)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.apache.maven.plugin.MojoExecutionException: org.apache.maven.plugins.enforcer.RequireProperty failed with message:
You must set a dbVersion property!
at org.apache.maven.plugins.enforcer.EnforceMojo.execute(EnforceMojo.java:188)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:106)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 30 more
Caused by: org.apache.maven.enforcer.rule.api.EnforcerRuleException: You must set a dbVersion property!
at org.apache.maven.plugins.enforcer.AbstractPropertyEnforcerRule.execute(AbstractPropertyEnforcerRule.java:119)
at org.apache.maven.plugins.enforcer.EnforceMojo.execute(EnforceMojo.java:177)
... 32 more
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Sending e-mails to: faxtomail-commits(a)list.forge.codelutin.com
channel stopped
Skipping sonar analysis due to bad build status FAILURE
1
36
Build failed in Jenkins: faxtomail-nightly » FaxToMail #1
by admin+ci-codelutin.com@codelutin.com 31 Mar '14
by admin+ci-codelutin.com@codelutin.com 31 Mar '14
31 Mar '14
See <http://ci.codelutin.com/jenkins/job/faxtomail-nightly/com.franciaflex$faxto…>
------------------------------------------
<===[JENKINS REMOTING CAPACITY]===> channel started
log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.converters.BooleanConverter).
log4j:WARN Please initialize the log4j system properly.
Executing Maven: -B -f <http://ci.codelutin.com/jenkins/job/faxtomail-nightly/com.franciaflex$faxto…> -s /var/local/forge/data/codelutin.com/maven/settings.xml -e -U clean verify -DperformRelease
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] FaxToMail
[INFO] FaxToMail :: Persistence
[INFO] FaxToMail :: Service
[INFO] FaxToMail :: Web
[INFO] FaxToMail :: UI
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building FaxToMail 0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/repositories/central-releases/org/cod…
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/groups/faxtomail-group/org/codehaus/m…
[INFO] Downloading: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-…
[INFO] Downloaded: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-… (0 B at 0.0 KB/sec)
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/repositories/central-releases/org/cod…
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/groups/faxtomail-group/org/codehaus/m…
[INFO] Downloading: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-parent…
[INFO] Downloaded: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-parent… (0 B at 0.0 KB/sec)
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/repositories/central-releases/org/cod…
[INFO] Downloading: http://nexus.nuiton.org/nexus/content/groups/faxtomail-group/org/codehaus/m…
[INFO] Downloading: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-…
[INFO] Downloaded: http://repo.maven.apache.org/maven2/org/codehaus/mojo/animal-sniffer-maven-… (0 B at 0.0 KB/sec)
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ faxtomail ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (ensure-no-container-api) @ faxtomail ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (check-project-files) @ faxtomail ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (check-release-properties) @ faxtomail ---
[JENKINS] Archiving disabled
1
9
Build failed in Jenkins: faxtomail-ci » FaxToMail :: Web #4
by admin+ci-codelutin.com@codelutin.com 25 Feb '14
by admin+ci-codelutin.com@codelutin.com 25 Feb '14
25 Feb '14
See <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>
Changes:
[kmorin] refs #4231 Faire les UI de tous les écrans
------------------------------------------
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building FaxToMail :: Web 0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ faxtomail-ui-web ---
[INFO] Deleting <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (check-project-files) @ faxtomail-ui-web ---
[INFO]
[INFO] --- i18n-maven-plugin:3.0:parserStruts2 (parseJsp) @ faxtomail-ui-web ---
[INFO]
[INFO] --- i18n-maven-plugin:3.0:parserJava (parseOthersAndGen) @ faxtomail-ui-web ---
[INFO]
[INFO] >>> i18n-maven-plugin:3.0:gen (parseOthersAndGen) @ faxtomail-ui-web >>>
[INFO]
[INFO] --- i18n-maven-plugin:3.0:get (get) @ faxtomail-ui-web ---
[INFO] Copying faxtomail-ui-web.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>
[INFO] Copying faxtomail-ui-web.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>
[INFO]
[INFO] <<< i18n-maven-plugin:3.0:gen (parseOthersAndGen) @ faxtomail-ui-web <<<
[INFO]
[INFO] --- i18n-maven-plugin:3.0:gen (parseOthersAndGen) @ faxtomail-ui-web ---
[INFO]
[INFO] >>> i18n-maven-plugin:3.0:bundle (parseOthersAndGen) @ faxtomail-ui-web >>>
[INFO]
[INFO] --- i18n-maven-plugin:3.0:collect-i18n-artifacts (collect-i18n-artifacts) @ faxtomail-ui-web ---
[INFO] collected 8 i18n artifacts for locale fr_FR stored in <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>
[INFO] collected 8 i18n artifacts for locale en_GB stored in <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>
[INFO]
[INFO] <<< i18n-maven-plugin:3.0:bundle (parseOthersAndGen) @ faxtomail-ui-web <<<
[INFO]
[INFO] --- i18n-maven-plugin:3.0:bundle (parseOthersAndGen) @ faxtomail-ui-web ---
[WARNING] bundle fr_FR contains 80/134 empty entries! (use -Di18n.showEmpty to see these entries)
[WARNING] bundle en_GB contains 80/134 empty entries! (use -Di18n.showEmpty to see these entries)
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ faxtomail-ui-web ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 9 resources
[INFO] Copying 3 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ faxtomail-ui-web ---
[INFO] Compiling 12 source files to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>
[INFO] -------------------------------------------------------------
[WARNING] COMPILATION WARNING :
[INFO] -------------------------------------------------------------
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>: Some input files use unchecked or unsafe operations.
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>: Recompile with -Xlint:unchecked for details.
[INFO] 2 warnings
[INFO] -------------------------------------------------------------
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/com.franciaflex.faxtomail$…>:[163,25] cannot find symbol
symbol: variable PROPERTY_CLIENT
location: interface com.franciaflex.faxtomail.persistence.entities.Email
[INFO] 1 error
[INFO] -------------------------------------------------------------
[JENKINS] Archiving disabled
1
1
25 Feb '14
See <http://ci.codelutin.com/jenkins/job/faxtomail-ci/4/changes>
Changes:
[kmorin] remove clients
[kmorin] add clients sample
[kmorin] refs #4231 Faire les UI de tous les écrans
------------------------------------------
[...truncated 146 lines...]
[INFO] Add compile source root : <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>
[INFO] Add resource root :Resource {targetPath: null, filtering: false, FileSet {directory: <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…,> PatternSet [includes: {}, excludes: {**/*.java}]}}
[INFO]
[INFO] --- i18n-maven-plugin:3.0:parserJava (scan-sources) @ faxtomail-persistence ---
[INFO]
[INFO] >>> i18n-maven-plugin:3.0:gen (scan-sources) @ faxtomail-persistence >>>
[INFO]
[INFO] --- i18n-maven-plugin:3.0:get (get) @ faxtomail-persistence ---
[INFO] Copying faxtomail-persistence.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>
[INFO] Copying faxtomail-persistence.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>
[INFO]
[INFO] <<< i18n-maven-plugin:3.0:gen (scan-sources) @ faxtomail-persistence <<<
[INFO]
[INFO] --- i18n-maven-plugin:3.0:gen (scan-sources) @ faxtomail-persistence ---
[WARNING] bundle fr_FR contains 27/27 empty entries! (use -Di18n.showEmpty to see these entries)
[WARNING] bundle en_GB contains 27/27 empty entries! (use -Di18n.showEmpty to see these entries)
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ faxtomail-persistence ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 4 resources
[INFO] Copying 18 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ faxtomail-persistence ---
[INFO] Compiling 121 source files to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>: Some input files use unchecked or unsafe operations.
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>: Recompile with -Xlint:unchecked for details.
[INFO]
[INFO] --- maven-antrun-plugin:1.7:run (generate-surefire-workdir) @ faxtomail-persistence ---
[INFO] Executing tasks
main:
[mkdir] Created dir: <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>
[INFO] Executed tasks
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ faxtomail-persistence ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ faxtomail-persistence ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-surefire-plugin:2.16:test (default-test) @ faxtomail-persistence ---
[INFO] No tests to run.
[JENKINS] Recording test results
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ faxtomail-persistence ---
[INFO] Building jar: <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-persist…>
[INFO]
[INFO] --- maven-site-plugin:3.3:attach-descriptor (attach-descriptor) @ faxtomail-persistence ---
[JENKINS] Archiving disabled
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building FaxToMail :: Service 0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ faxtomail-service ---
[INFO] Deleting <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (check-project-files) @ faxtomail-service ---
[INFO]
[INFO] --- i18n-maven-plugin:3.0:parserJava (scan-sources) @ faxtomail-service ---
[INFO]
[INFO] --- i18n-maven-plugin:3.0:parserValidation (scan-sources) @ faxtomail-service ---
[INFO] Load rules file validation.rules
[INFO]
[INFO] >>> i18n-maven-plugin:3.0:gen (scan-sources) @ faxtomail-service >>>
[INFO]
[INFO] --- i18n-maven-plugin:3.0:get (get) @ faxtomail-service ---
[INFO] Copying faxtomail-service.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>
[INFO] Copying faxtomail-service.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>
[INFO]
[INFO] <<< i18n-maven-plugin:3.0:gen (scan-sources) @ faxtomail-service <<<
[INFO]
[INFO] --- i18n-maven-plugin:3.0:gen (scan-sources) @ faxtomail-service ---
[WARNING] bundle fr_FR contains 63/63 empty entries! (use -Di18n.showEmpty to see these entries)
[WARNING] bundle en_GB contains 63/63 empty entries! (use -Di18n.showEmpty to see these entries)
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ faxtomail-service ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ faxtomail-service ---
[INFO] Compiling 15 source files to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>: <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…> uses unchecked or unsafe operations.
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>: Recompile with -Xlint:unchecked for details.
[INFO]
[INFO] --- maven-antrun-plugin:1.7:run (generate-surefire-workdir) @ faxtomail-service ---
[INFO] Executing tasks
main:
[mkdir] Created dir: <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>
[INFO] Executed tasks
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ faxtomail-service ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ faxtomail-service ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-surefire-plugin:2.16:test (default-test) @ faxtomail-service ---
[INFO] No tests to run.
[JENKINS] Recording test results
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ faxtomail-service ---
[INFO] Building jar: <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-service…>
[INFO]
[INFO] --- maven-site-plugin:3.3:attach-descriptor (attach-descriptor) @ faxtomail-service ---
[JENKINS] Archiving disabled
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building FaxToMail :: Web 0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ faxtomail-ui-web ---
[INFO] Deleting <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>
[INFO]
[INFO] --- maven-enforcer-plugin:1.3.1:enforce (check-project-files) @ faxtomail-ui-web ---
[INFO]
[INFO] --- i18n-maven-plugin:3.0:parserStruts2 (parseJsp) @ faxtomail-ui-web ---
[INFO]
[INFO] --- i18n-maven-plugin:3.0:parserJava (parseOthersAndGen) @ faxtomail-ui-web ---
[INFO]
[INFO] >>> i18n-maven-plugin:3.0:gen (parseOthersAndGen) @ faxtomail-ui-web >>>
[INFO]
[INFO] --- i18n-maven-plugin:3.0:get (get) @ faxtomail-ui-web ---
[INFO] Copying faxtomail-ui-web.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>
[INFO] Copying faxtomail-ui-web.properties to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>
[INFO]
[INFO] <<< i18n-maven-plugin:3.0:gen (parseOthersAndGen) @ faxtomail-ui-web <<<
[INFO]
[INFO] --- i18n-maven-plugin:3.0:gen (parseOthersAndGen) @ faxtomail-ui-web ---
[INFO]
[INFO] >>> i18n-maven-plugin:3.0:bundle (parseOthersAndGen) @ faxtomail-ui-web >>>
[INFO]
[INFO] --- i18n-maven-plugin:3.0:collect-i18n-artifacts (collect-i18n-artifacts) @ faxtomail-ui-web ---
[INFO] collected 8 i18n artifacts for locale fr_FR stored in <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>
[INFO] collected 8 i18n artifacts for locale en_GB stored in <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>
[INFO]
[INFO] <<< i18n-maven-plugin:3.0:bundle (parseOthersAndGen) @ faxtomail-ui-web <<<
[INFO]
[INFO] --- i18n-maven-plugin:3.0:bundle (parseOthersAndGen) @ faxtomail-ui-web ---
[WARNING] bundle fr_FR contains 80/134 empty entries! (use -Di18n.showEmpty to see these entries)
[WARNING] bundle en_GB contains 80/134 empty entries! (use -Di18n.showEmpty to see these entries)
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ faxtomail-ui-web ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 9 resources
[INFO] Copying 3 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ faxtomail-ui-web ---
[INFO] Compiling 12 source files to <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>
[INFO] -------------------------------------------------------------
[WARNING] COMPILATION WARNING :
[INFO] -------------------------------------------------------------
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>: Some input files use unchecked or unsafe operations.
[WARNING] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>: Recompile with -Xlint:unchecked for details.
[INFO] 2 warnings
[INFO] -------------------------------------------------------------
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>:[163,25] cannot find symbol
symbol: variable PROPERTY_CLIENT
location: interface com.franciaflex.faxtomail.persistence.entities.Email
[INFO] 1 error
[INFO] -------------------------------------------------------------
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] FaxToMail ......................................... SUCCESS [ 2.376 s]
[INFO] FaxToMail :: Persistence .......................... SUCCESS [ 7.001 s]
[INFO] FaxToMail :: Service .............................. SUCCESS [ 2.038 s]
[INFO] FaxToMail :: Web .................................. FAILURE [ 1.615 s]
[INFO] FaxToMail :: UI ................................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 14.586 s
[INFO] Finished at: 2014-02-25T10:25:50+01:00
[INFO] Final Memory: 43M/586M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project faxtomail-ui-web: Compilation failure
[ERROR] <http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>:[163,25] cannot find symbol
[ERROR] symbol: variable PROPERTY_CLIENT
[ERROR] location: interface com.franciaflex.faxtomail.persistence.entities.Email
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project faxtomail-ui-web: Compilation failure
<http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>:[163,25] cannot find symbol
symbol: variable PROPERTY_CLIENT
location: interface com.franciaflex.faxtomail.persistence.entities.Email
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:108)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:76)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:116)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:361)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
at org.jvnet.hudson.maven3.launcher.Maven31Launcher.main(Maven31Launcher.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven31Main.launch(Maven31Main.java:181)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:134)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:69)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:328)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
<http://ci.codelutin.com/jenkins/job/faxtomail-ci/ws/trunk/faxtomail-ui-web/…>:[163,25] cannot find symbol
symbol: variable PROPERTY_CLIENT
location: interface com.franciaflex.faxtomail.persistence.entities.Email
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:858)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:133)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 30 more
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :faxtomail-ui-web
Sending e-mails to: faxtomail-commits(a)list.forge.codelutin.com morin(a)codelutin.com
channel stopped
1
1
r15 - in trunk: faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin
by kmorin@users.forge.codelutin.com 25 Feb '14
by kmorin@users.forge.codelutin.com 25 Feb '14
25 Feb '14
Author: kmorin
Date: 2014-02-25 10:27:29 +0100 (Tue, 25 Feb 2014)
New Revision: 15
Url: http://codelutin.com/projects/faxtomail/repository/revisions/15
Log:
fix bug
Modified:
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java
trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java 2014-02-25 09:23:52 UTC (rev 14)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java 2014-02-25 09:27:29 UTC (rev 15)
@@ -142,7 +142,7 @@
clients = getReferentielService().importClients(clientFile);
} catch(IOException | URISyntaxException e) {
- clients = new ArrayList<>();
+ return;
}
List<DemandType> types = Lists.newArrayList(
Modified: trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java
===================================================================
--- trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java 2014-02-25 09:23:52 UTC (rev 14)
+++ trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java 2014-02-25 09:27:29 UTC (rev 15)
@@ -160,7 +160,7 @@
result.put(Email.PROPERTY_SAV_NUMBER, "Numéro SAV");
result.put(Email.PROPERTY_RANGE_ROW, "Gamme");
result.put(Email.PROPERTY_MAIL_FOLDER, "Dossier");
- result.put(Email.PROPERTY_CLIENT, "Client");
+ result.put(Email.PROPERTY_CLIENT_CODE, "Code Client");
result.put(Email.PROPERTY_DEMAND_STATUS, "Statut");
result.put(Email.PROPERTY_DEMAND_TYPE, "Type");
result.put(Email.PROPERTY_TAKEN_BY, "Pris par");
1
0
25 Feb '14
Author: kmorin
Date: 2014-02-25 10:23:52 +0100 (Tue, 25 Feb 2014)
New Revision: 14
Url: http://codelutin.com/projects/faxtomail/repository/revisions/14
Log:
remove clients
Removed:
trunk/faxtomail-service/src/main/resources/fx_clients.csv
Deleted: trunk/faxtomail-service/src/main/resources/fx_clients.csv
===================================================================
--- trunk/faxtomail-service/src/main/resources/fx_clients.csv 2014-02-25 09:21:45 UTC (rev 13)
+++ trunk/faxtomail-service/src/main/resources/fx_clients.csv 2014-02-25 09:23:52 UTC (rev 14)
@@ -1,1582 +0,0 @@
-Id_Correspondance;Societe;Nom;Caracteristique1;Caracteristique2;Caracteristique3;Client_Top;Numero_Fax;Adresse_Mail;Code_Client;Objet_Message;Destination
-253547;FX;DETAMPLE DANIEL;A;71 UXEAU;NULL;NULL;03 85 85 13 55;detampledaniel(a)nimeo.fr;22153;NULL;
-253548;FX;BARSACQ;A+;40 SOUSTONS;NULL;NULL;05 58 41 22 17;christian.barsacq(a)wanadoo.fr;22154;NULL;
-253549;FX;CUAZ PEROLIN MAURICE;NULL;38 LA BATIE D;NULL;NULL;04 76 32 18 57;NULL;22184;NULL;
-253550;FX;LOGICLOS;NULL;62 ANNEZIN LE;NULL;NULL;03 21 57 16 25;NULL;22186;NULL;
-253551;FX;CHASSIER ALAIN;A;37 DRUYE;NULL;NULL;02 47 50 11 36;alain.chassier(a)live.fr;22217;NULL;
-253552;FX;RLK PRODUCTION;A+;70 COMBEAUFON;NULL;NULL;03 84 92 17 00;NULL;22236;NULL;
-253553;FX;ALEXANDRE ET DAMIEN B;A;78 MAULE;NULL;NULL;01 30 74 73 94;NULL;22246;NULL;
-253554;FX;DOUSSIERE SEBASTIEN;A;48 MEYRUEIS;NULL;NULL;04 66 45 67 95;NULL;22248;NULL;
-253555;FX;SERRURERIE COUDRAY;A;17 MESCHERS;NULL;NULL;05 46 02 57 98;NULL;22252;NULL;
-253556;FX;VERDET;B;25 BESANCON C;NULL;NULL;03 81 80 56 18;NULL;22280;NULL;
-253557;FX;GABARRE JEAN MARC;A;47 FUMEL;NULL;NULL;05 53 40 91 92;NULL;22288;NULL;
-253558;FX;BELLAVIA ROBERT SAS;A+;38 SASSENAGE;NULL;NULL;04 76 27 53 08;NULL;22303;NULL;
-253559;FX;BELLAVIA ROBERT SAS;A+;38 SASSENAGE;NULL;NULL;04 76 27 53 08;bellavia.laurence(a)aliceadsl.fr;22303;NULL;
-253560;FX;ELM PRO-POSE;B;74 LA BALME D;NULL;NULL;04 50 77 73 32;NULL;22305;NULL;
-253561;FX;DROUIN JACK;A;35 RENNES;NULL;NULL;02 99 65 41 22;NULL;22313;NULL;
-253562;FX;BIAS ALU;A;47 BIAS;NULL;NULL;05 53 49 01 50;NULL;22331;NULL;
-253563;FX;BASSAT BRUNO;D;33 COUTRAS;NULL;NULL;05 57 49 10 22;bruno.bassat(a)wanadoo.fr;22337;NULL;
-253564;FX;BASSAT BRUNO;D;33 COUTRAS;NULL;NULL;05 57 49 10 22;NULL;22337;NULL;
-253565;FX;IPM MONDIA;A;01 PONT DE VA;NULL;NULL;03 85 36 80 25;NULL;22343;NULL;
-253566;FX;FAVRE ET FILS;B;73 UGINE;NULL;NULL;04 79 37 25 51;NULL;22344;NULL;
-253567;FX;FERMETUR'IDEAL;A;51 REIMS;NULL;NULL;03 26 08 52 45;NULL;22345;NULL;
-253568;FX;JB STORE;A;79 FRONTENAY;NULL;NULL;05 49 09 51 89;NULL;22362;NULL;
-253569;FX;SISTEMAS DE CORTINAS;B;ES 22 BARCELO;NULL;NULL;349 34 17 75 53;NULL;22368;NULL;
-253570;FX;LEPAGE ET FILS 4438;NULL;08 WARCQ;NULL;NULL;03 24 56 32 71;NULL;22370;NULL;
-253571;FX;ACS M. JEANTILS DOMINIQUE;A;66 LAROQUE;NULL;NULL;09 65 37 91 62;NULL;22376;NULL;
-253572;FX;STF (SOCIETE TECHNIQUE;A+;78 GAMBAIS;NULL;NULL;01 30 44 18 79;NULL;22377;NULL;
-253573;FX;MENUISERIE COMMINGEOISE;NULL;31 SAINT GAUD;NULL;NULL;04 68 33 53 62;NULL;22378;NULL;
-253574;FX;MENUISERIE COMMINGEOISE;NULL;31 SAINT GAUD;NULL;NULL;05 62 00 88 33;NULL;22378;NULL;
-253575;FX;MENUISERIE COMMINGEOISE;NULL;31 SAINT GAUD;NULL;NULL;05 68 41 27 18;NULL;22378;NULL;
-253576;FX;CLERC THIERRY;A;11 CASTELNAUD;NULL;NULL;04 68 23 53 12;sarl.clerc.thierry(a)orange.fr;22404;NULL;
-253577;FX;BRASALU;A;33 Pomerol;NULL;NULL;05 57 84 14 66;NULL;22409;NULL;
-253578;FX;GIRAUD PHILIPPE;A;94 LIMEIL BRE;NULL;NULL;01 45 98 33 14;NULL;22410;NULL;
-253579;FX;UCLAIR;A;CM UNDE;NULL;NULL;NULL;NULL;22415;NULL;
-253580;FX;UCLAIR;A;CM UNDE;NULL;NULL;02 37 22 32 01;uclaircm(a)yahoo.fr;22415;NULL;
-253581;FX;UCLAIR;A;CM UNDE;NULL;NULL;23 72 22 32 01;NULL;22415;NULL;
-253582;FX;SAGRANGE FILS;B;21 BEAUNE;NULL;NULL;03 80 24 00 84;sellerie.tapisserie.sagrange(a)neuf.fr;22419;NULL;
-253583;FX;SAGRANGE FILS;B;21 BEAUNE;NULL;NULL;0 ;NULL;22419;NULL;
-253584;FX;DEBENAIS JEAN MICHEL JMD;A;79 PARTHENAY;NULL;NULL;0 ;debenaisjm(a)cc-parthenay.fr;22420;NULL;
-253585;FX;DIPLEX;A+;38 MOIRANS;NULL;NULL;04 76 35 31 18;NULL;22424;NULL;
-253586;FX;BOUTEILLE BERNARD;A;69 ST SYMPHOR;NULL;NULL;04 78 44 34 21;NULL;22425;NULL;
-253587;FX;DIP STORES D HIVERS;A;69 SAINT LAUR;NULL;NULL;04 72 22 00 75;storedhiver(a)orange.fr;22441;NULL;
-253588;FX;DIP STORES D HIVERS;A;69 SAINT LAUR;NULL;NULL;04 72 22 00 75;NULL;22441;NULL;
-253589;FX;ALUGLACE;A;03 GANNAT;NULL;NULL;04 70 90 14 78;NULL;22449;NULL;
-253590;FX;ALUGLACE;A;03 GANNAT;NULL;NULL;0 ;NULL;22449;NULL;
-253591;FX;IDEAL EQUIPEMENT;NULL;91 ST CYR SOU;NULL;NULL;01 60 81 22 67;idealequip(a)wanadoo.fr;22451;NULL;
-253592;FX;GIRARDET MENUISERIE;A+;25 ARCON;NULL;NULL;03 81 39 15 23;NULL;22454;NULL;
-253593;FX;BASSET JEROME;A;10 BAR SUR AU;NULL;NULL;0 ;jerome.basset691(a)orange.fr;22462;NULL;
-253594;FX;DESIGN VERTIKAL, D.O.O.,;B;SI 6 TRZIN;NULL;NULL;386 15 30 41 02;design.jurhar(a)siol.net;22487;NULL;
-253595;FX;DESIGN VERTIKAL, D.O.O.,;B;SI 6 TRZIN;NULL;NULL;386 15 30 41 02;design.vertikal(a)s5.net;22487;NULL;
-253596;FX;DUTARDRE SAS 5107;A;37 BLERE;NULL;NULL;02 47 30 20 47;NULL;22488;NULL;
-253597;FX;DACHER;A;80 RIVERY;NULL;NULL;03 22 80 07 90;NULL;22517;NULL;
-253598;FX;ALU CONCEPT SYSTEM'S;D;37 MONTBAZON;NULL;NULL;02 47 73 12 52;NULL;22519;NULL;
-253599;FX;PEQUIGNOT SYLVAIN;A;25 NOVILLARD;NULL;NULL;03 81 57 01 18;NULL;22531;NULL;
-253600;FX;EURO SERRURERIE;A;34 SETE;NULL;NULL;04 67 80 20 13;NULL;22543;NULL;
-253601;FX;MIDI ALU;NULL;34 PALAVAS LE;NULL;NULL;04 67 68 20 85;NULL;22545;NULL;
-253602;FX;HORN VERRES ALU;A;57 SAINT JEAN;NULL;NULL;03 87 24 25 06;NULL;22549;NULL;
-253603;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 97 88;cauvergnon(a)garrigues-sa.com;22551;NULL;
-253604;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 34 27 28 11;NULL;22551;NULL;
-253605;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 64 18;plarroche(a)garrigues-sa.com;22551;NULL;
-253606;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 98 52 59;cjosselin(a)garrigues-sa.com;22551;NULL;
-253607;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 98 52 59;NULL;22551;NULL;
-253608;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 34 27 28 10;NULL;22551;NULL;
-253609;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 95 99 91;jpmarieanne(a)garrigues-sa.com;22551;NULL;
-253610;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 64 18;NULL;22551;NULL;
-253611;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 65 68;NULL;22551;NULL;
-253612;FX;MENUISERIE LA GLANEUSE;A;17 LA ROCHELL;NULL;NULL;05 46 00 51 84;NULL;22575;NULL;
-253613;FX;DAVID GILBERT ETS;NULL;83 STE MAXIME;NULL;NULL;04 94 49 00 16;NULL;22584;NULL;
-253614;FX;LES COMPAGNONS METALLIERS;A+;91 CORBEIL ES;NULL;NULL;01 60 88 25 47;cab(a)breuzard.fr;22599;NULL;
-253615;FX;LES COMPAGNONS METALLIERS;A+;91 CORBEIL ES;NULL;NULL;01 60 88 25 47;NULL;22599;NULL;
-253616;FX;LES COMPAGNONS METALLIERS;A+;91 CORBEIL ES;NULL;NULL;01 60 89 02 51;p.heroguelle(a)breuzard.fr;22599;NULL;
-253617;FX;MIROITERIE DE SARCELLES;A;95 SARCELLES;NULL;NULL;01 39 92 17 47;NULL;22600;NULL;
-253618;FX;VAL OISE FERM-SOL. STOR.&FERM.;NULL;93 LIVRY GARG;NULL;NULL;01 43 32 04 95;NULL;22621;NULL;
-253619;FX;BOURGE DANIEL;NULL;14 CONDE SUR;NULL;NULL;02 31 66 90 67;NULL;22633;NULL;
-253620;FX;SODIFF;B;59 MOUVAUX;NULL;NULL;03 21 95 96 97;NULL;22641;NULL;
-253621;FX;C2M ALU;A+;19 MANSAC;NULL;NULL;05 55 85 10 46;NULL;22679;NULL;
-253622;FX;AUSTRAL;D;77 NEMOURS CE;NULL;NULL;01 64 78 54 98;jm.beauland(a)austral.fr;22682;NULL;
-253623;FX;KATVE TVOTANTO OY;NULL;FI RJAVALTA;NULL;NULL;358 25 31 81 20;heikki(a)katve.fi;22694;NULL;
-253624;FX;METALLERIE DE KERPONT;A;56 LANESTER;NULL;NULL;02 97 76 93 94;NULL;22708;NULL;
-253625;FX;CL DIVERS SUD OUEST JF BOMONT;B;18 B;NULL;NULL;02 99 14 83 82;NULL;22735;NULL;
-253626;FX;CL DIVERS SUD OUEST JL AUTHIER;A;17 Rochelle;NULL;NULL;02 99 14 83 80;NULL;22737;NULL;
-253627;FX;COURTOIS CHRISTIAN;A;21 BEAUVRE;NULL;NULL;03 80 24 02 12;NULL;22739;NULL;
-253628;FX;CORBE ET FILS;A;35 RENNES;NULL;NULL;02 99 41 94 83;NULL;22743;NULL;
-253629;FX;GUIHUR MICHEL;A;56 THEIX;NULL;NULL;02 97 68 86 45;NULL;22745;NULL;
-253630;FX;GUILLOT THIERRY;A;18 SAINT SATU;NULL;NULL;02 48 54 16 91;NULL;22773;NULL;
-253631;FX;ALTAPLAST;A;55 BRAS/MEUSE;NULL;NULL;03 29 86 78 60;NULL;22774;NULL;
-253632;FX;SV2M;NULL;72 MULSANNE;NULL;NULL;02 43 78 03 08;NULL;22787;NULL;
-253633;FX;SV2M;NULL;72 MULSANNE;NULL;NULL;02 43 14 55 56;NULL;22787;NULL;
-253634;FX;GROLLA VERRES;A+;73 MOUTIERS C;NULL;NULL;04 79 22 98 25;NULL;22793;NULL;
-253635;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;mickael.oger(a)menuiserie-bourneuf.fr;22796;NULL;
-253636;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;b.talsmat(a)menuiserie-bourneuf.fr;22796;NULL;
-253637;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 07;eddy.galpin(a)menuiserie-bourneuf.fr;22796;NULL;
-253638;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;jm.theau(a)menuiserie-bourneuf.fr;22796;NULL;
-253639;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;NULL;22796;NULL;
-253640;FX;DESHOUX * ne + utiliser voir le Y03353*;D;35 Chapelle-d;NULL;NULL;0 ;NULL;22798;NULL;
-253641;FX;ARTIS;A+;72 SAVIGNE L';NULL;NULL;0 ;artis.verandas(a)wanadoo.fr;22810;NULL;
-253642;FX;ARTIS;A+;72 SAVIGNE L';NULL;NULL;02 43 27 43 79;buell72(a)orange.fr;22810;NULL;
-253643;FX;STEC (STRUCTURES TECHNI-;A;45 ST JEAN LE;NULL;NULL;02 38 66 61 74;NULL;22811;NULL;
-253644;FX;SOPHIA DECORATION;NULL;66 PERPIGNAN;NULL;NULL;04 68 35 02 10;NULL;22814;NULL;
-253645;FX;CHAUVIN DOMINIQUE 4342;NULL;61 BRIOUZE;NULL;NULL;02 33 64 13 46;NULL;22817;NULL;
-253646;FX;SERRURERIE CHALLANDAISE;D;85 CHALLANS;NULL;NULL;02 51 35 11 85;NULL;22825;NULL;
-253647;FX;TALVARD;D;61 ALENCON;NULL;NULL;02 33 27 57 08;NULL;22837;NULL;
-253648;FX;BIGNON LUCIEN 4650;NULL;53 CHAMPEON;NULL;NULL;02 43 00 89 93;NULL;22845;NULL;
-253649;FX;MARTO ISOLATION;A;93 MONTREUIL;NULL;NULL;01 48 70 20 60;NULL;22854;NULL;
-253650;FX;PARIS NORD FERMETURES;A+;95 LOUVRES;NULL;NULL;NULL;NULL;22856;NULL;
-253651;FX;PARIS NORD FERMETURES;A+;95 LOUVRES;NULL;NULL;01 34 68 96 00;NULL;22856;NULL;
-253652;FX;FERMETURES LOURDAISES;A;65 LOURDES;NULL;NULL;09 70 63 23 49;NULL;22867;NULL;
-253653;FX;PESTEL MICHEL;A;27 BERNAY;NULL;NULL;02 32 46 03 81;NULL;22881;NULL;
-253654;FX;STORES CONCEPT SERVICE;A;95 ARGENTEUIL;NULL;NULL;0 45 06 47 18;NULL;22886;NULL;
-253655;FX;STORES CONCEPT SERVICE;A;95 ARGENTEUIL;NULL;NULL;01 45 06 47 18;laurentstore(a)wanadoo.fr;22886;NULL;
-253656;FX;BROCHARD;A;18 BOURGES;NULL;NULL;02 48 67 05 21;NULL;22888;NULL;
-253657;FX;LECLER HENRI;A;78 BONNIERES;NULL;NULL;01 30 42 09 99;NULL;22895;NULL;
-253658;FX;NICOLINO;A;95 ST LEU LA;NULL;NULL;01 39 60 19 27;NULL;22917;NULL;
-253659;FX;SELLERIE SABOLIENNE;A;72 BRULON;NULL;NULL;0 ;NULL;22926;NULL;
-253660;FX;SELLERIE SABOLIENNE;A;72 BRULON;NULL;NULL;0 ;sellerie.sabolienne(a)orange.fr;22926;NULL;
-253661;FX;LACROIX FRERES;B;74 MIEUSSY;NULL;NULL;04 50 43 08 52;NULL;22932;NULL;
-253662;FX;PIEM;A;31 TOULOUSE C;NULL;NULL;05 61 40 22 66;NULL;22945;NULL;
-253663;FX;LA MAISON DU VOLET MARSEILLAIS;A+;13 MARSEILLE;NULL;NULL;04 88 04 02 90;linda.ouverture(a)orange.fr;22947;NULL;
-253664;FX;LA MAISON DU VOLET MARSEILLAIS;A+;13 MARSEILLE;NULL;NULL;04 88 04 02 90;louverture(a)wanadoo.fr;22947;NULL;
-253665;FX;COMPTOIR DES VERRES;B;73 CHAMBERY C;NULL;NULL;04 79 62 54 70;NULL;22951;NULL;
-253666;FX;PROFIL LANGUEDOC;D;11 LEZIGNAN C;NULL;NULL;04 68 27 32 36;NULL;22961;NULL;
-253667;FX;NORD ALU BOIS;A;50 THEVILLE;NULL;NULL;02 33 22 55 67;NULL;22969;NULL;
-253668;FX;ESPACE SOLEIL;D;73 CHALLES LE;NULL;NULL;04 79 72 83 79;NULL;22973;NULL;
-253669;FX;BRUNET;A;33 YVRAC;NULL;NULL;05 56 06 47 22;NULL;22981;NULL;
-253670;FX;ISOFERM STORE - M. AIGU;B;21 CHENOVE;NULL;NULL;03 80 52 48 41;NULL;22983;NULL;
-253671;FX;ROUX ALAIN;A;51 ST MARTIN;NULL;NULL;03 55 03 51 31;roux.alain51(a)orange.fr;22989;NULL;
-253672;FX;RBM (RENOVATION BATIMENT;D;11 PENNAUTIER;NULL;NULL;04 68 47 40 50;NULL;22994;NULL;
-253673;FX;SAJEMA VENT DE L'EST;A+;16 ANGOULEME;NULL;NULL;05 45 95 73 67;NULL;22996;NULL;
-253674;FX;GUERIN MICHEL;A;53 CHATEAU GO;NULL;NULL;02 43 07 00 58;NULL;22999;NULL;
-253675;FX;GAM PROTECTION;A+;93 ROMAINVILL;NULL;NULL;01 41 83 08 40;NULL;23003;NULL;
-253676;FX;J'ISOLE STORES DECO;A;42 ROANNE;NULL;NULL;04 77 71 99 97;NULL;23033;NULL;
-253677;FX;BERGES CLAUDE;A+;24 BOULAZAC;NULL;NULL;05 53 08 97 47;NULL;23037;NULL;
-253678;FX;GUILLOT PAUL;B;58 ARQUIAB;NULL;NULL;03 89 39 65 89;NULL;23038;NULL;
-253679;FX;ANTONIETTI G.;A;25 EXINCOURT;NULL;NULL;03 81 32 13 48;NULL;23040;NULL;
-253680;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 26 49 67 20;menuiserie.betheny(a)pillaud-materiaux.fr;23041;NULL;
-253681;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 23 69 96 28;menuiserie.brasles(a)pillaud-materiaux.fr;23041;NULL;
-253682;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 25 27 39 84;u.barsuraube(a)pillaud-materiaux.fr;23041;NULL;
-253683;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 25 45 12 09;NULL;23041;NULL;
-253684;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 23 69 00 60;NULL;23041;NULL;
-253685;FX;POINT P BRETAGNE MORLAIX;A;29 MORLAIX;NULL;NULL;02 98 63 43 66;NULL;23052;NULL;
-253686;FX;CL DIVERS SUD EST A.COSTE;B;38 L;NULL;NULL;08 10 82 05 10;NULL;23066;NULL;
-253687;FX;STORES LIOGIER;A+;42 ROCHE LA M;NULL;NULL;04 77 33 12 92;NULL;23069;NULL;
-253688;FX;STORES ET FERMETURES DE L ARGO RJ;A;56 ELVEN;NULL;NULL;02 97 53 32 34;NULL;23073;NULL;
-253689;FX;SOCOM INDUSTRIE;A;35 CESSON SEV;NULL;NULL;02 99 32 37 29;NULL;23086;NULL;
-253690;FX;DESJEUNES;A;75 PARIS;NULL;NULL;01 45 44 35 08;NULL;23093;NULL;
-253691;FX;SEINERA JEAN PIERRE;B;73 UGINE CEDE;NULL;NULL;04 79 89 01 50;NULL;23107;NULL;
-253692;FX;BIG MAT BROCARD MATERIAUX;NULL;60 ALLONNE;NULL;NULL;03 44 02 86 10;NULL;23108;NULL;
-253693;FX;JEUDY GUILLOT;A;03 VICHY;NULL;NULL;04 70 59 18 16;NULL;23117;NULL;
-253694;FX;ARENO 4264;NULL;91 AUVERS ST;NULL;NULL;01 69 92 24 13;NULL;23133;NULL;
-253695;FX;CL DIVERS SUD EST ATC BOURGOGNE;A;25 L;NULL;NULL;0 ;NULL;23154;NULL;
-253696;FX;TREBUCHON EQUIP;A;34 PEZENAS;NULL;NULL;04 67 98 04 44;NULL;23155;NULL;
-253697;FX;SERPE (STE ETUDES REALISA;A;75 PARIS;NULL;NULL;01 43 06 42 52;NULL;23171;NULL;
-253698;FX;SERVAIS;A;94 VILLEJUIF;NULL;NULL;01 46 78 86 20;NULL;23172;NULL;
-253699;FX;MILFEN;A;78 ST GERMAIN;NULL;NULL;01 34 51 87 80;NULL;23175;NULL;
-253700;FX;MILFEN;A;78 ST GERMAIN;NULL;NULL;01 34 61 21 31;NULL;23175;NULL;
-253701;FX;GUENEGO J. YVES;NULL;44 SAINT NAZA;NULL;NULL;02 40 19 17 44;NULL;23177;NULL;
-253702;FX;STORES BROUSSAIS;A;94 VILLEJUIF;NULL;NULL;01 53 14 34 89;NULL;23178;NULL;
-253703;FX;TRADITEX;A;63 CLERMONT F;NULL;NULL;04 73 91 70 69;s.hanotin(a)traditex.fr;23190;NULL;
-253704;FX;TRADITEX;A;63 CLERMONT F;NULL;NULL;04 73 91 70 69;NULL;23190;NULL;
-253705;FX;TRADITEX;A;63 CLERMONT F;NULL;NULL;0 ;s.hanotin(a)traditex.fr;23190;NULL;
-253706;FX;COF CENTRE OCCULTATIONS 4909;NULL;45 CHATEAUNEU;NULL;NULL;02 38 46 24 92;NULL;23191;NULL;
-253707;FX;LA MAISON DU STORE;D;17 ROCHEFORT;NULL;NULL;05 46 99 29 48;NULL;23193;NULL;
-253708;FX;MARTIGNY;A;40 BISCAROSSE;NULL;NULL;05 58 78 89 07;NULL;23203;NULL;
-253709;FX;MANOHA;A;66 PERPIGNAN;NULL;NULL;04 68 54 13 54;NULL;23212;NULL;
-253710;FX;PSP 92;A;92 RUEIL MALM;NULL;NULL;01 47 08 24 10;NULL;23214;NULL;
-253711;FX;EUROPE FERMETURES;A;01 CESSY;NULL;NULL;04 50 28 38 40;europefermetures(a)9business.fr;23226;NULL;
-253712;FX;STORES 82;A;82 MONTAUBAN;NULL;NULL;0 ;NULL;23242;NULL;
-253713;FX;MBA (MENUISERIE BOIS ALU);A;28 SAINT REMY;NULL;NULL;02 37 62 10 52;NULL;23255;NULL;
-253714;FX;SPF (STORES PLAFOND FERM.;A;27 DAUBEUF PR;NULL;NULL;02 32 54 41 96;NULL;23259;NULL;
-253715;FX;CRABOL;A;11 ST HILAIRE;NULL;NULL;04 68 79 82 40;NULL;23268;NULL;
-253716;FX;POUJOIS GEORGES;B;74 ANNECY;NULL;NULL;04 50 46 54 50;NULL;23273;NULL;
-253717;FX;PILLA FRANCISCO;A;18 DUN SUR AU;NULL;NULL;02 48 59 58 96;NULL;23277;NULL;
-253718;FX;LEFER DENIS SARL;A;50 BRICQUEBEC;NULL;NULL;02 33 10 07 91;NULL;23279;NULL;
-253719;FX;TOLIERIE ATELIERS;NULL;44 SAINT NAZA;NULL;NULL;02 40 66 82 05;NULL;23280;NULL;
-253720;FX;PERSIENNE DRANCEENNE;A;93 DRANCY;NULL;NULL;01 48 31 37 09;NULL;23288;NULL;
-253721;FX;HAVLUND SOLTEKNIK 4674;A;DK 2690 KARLS;NULL;NULL;45 43 42 14 01;steen(a)havlund.dk;23293;NULL;
-253722;FX;HAVLUND SOLTEKNIK 4674;A;DK 2690 KARLS;NULL;NULL;0 ;NULL;23293;NULL;
-253723;FX;HAVLUND SOLTEKNIK 4674;A;DK 2690 KARLS;NULL;NULL;0 ;LS(a)havlund.dk;23293;NULL;
-253724;FX;DAVID MARC;B;38 BOURGOIN J;NULL;NULL;04 74 93 05 61;NULL;23298;NULL;
-253725;FX;MEZZOLO JEAN MARC 4852;NULL;40 MIMIZAN PL;NULL;NULL;05 58 07 49 79;NULL;23304;NULL;
-253726;FX;MIROITERIE 102 303102;A;92 ANTONY;NULL;NULL;01 46 66 23 22;NULL;23311;NULL;
-253727;FX;MIROITERIE 102 303102;A;92 ANTONY;NULL;NULL;01 46 66 89 88;NULL;23311;NULL;
-253728;FX;MIROITERIE 102 303102;A;92 ANTONY;NULL;NULL;01 46 66 24 02;NULL;23311;NULL;
-253729;FX;MB MICHEL BETTIGNY SERRURERIE;A;92 CLAMART;NULL;NULL;01 46 38 86 19;NULL;23319;NULL;
-253730;FX;JUDLIN FERMETURES;A;75 PARIS;NULL;NULL;01 45 85 48 47;NULL;23329;NULL;
-253731;FX;CMR (CONSTRUCTIONS METAL-;NULL;44 LA CHAPELL;NULL;NULL;02 40 06 77 25;NULL;23331;NULL;
-253732;FX;BRISSONNEAU THIERRY;NULL;44 ST PHILBER;NULL;NULL;02 40 78 84 58;NULL;23338;NULL;
-253733;FX;OMNIUM SECURITE;NULL;30 NIMES;NULL;NULL;04 66 38 06 19;NULL;23356;NULL;
-253734;FX;STORMANIA 4910;A;78 CONFLANS S;NULL;NULL;01 39 72 75 45;NULL;23370;NULL;
-253735;FX;HAUSKNECHT FRANCOISE 4508;NULL;57 PIERREVILL;NULL;NULL;03 87 17 14 13;NULL;23373;NULL;
-253736;FX;BOIS ESPACE;B;73 ALBERTVILL;NULL;NULL;04 79 37 77 37;NULL;23377;NULL;
-253737;FX;OUEST MENUISERIE - JOS PERON;A+;29 PONT L'ABB;NULL;NULL;02 98 75 03 72;NULL;23382;NULL;
-253738;FX;OUEST MENUISERIE - JOS PERON;A+;29 PONT L'ABB;NULL;NULL;02 98 66 15 51;NULL;23382;NULL;
-253739;FX;ATOUT CARREAU;D;12 MILLAU;NULL;NULL;05 65 61 36 62;NULL;23383;NULL;
-253740;FX;NEGRO;A+;90 BAVILLIERS;NULL;NULL;03 84 55 05 79;NULL;23389;NULL;
-253741;FX;GINISTY ET CIE;B;74 THONON LES;NULL;NULL;04 50 71 82 87;NULL;23398;NULL;
-253742;FX;SAMSE EMBRUN;A;05 EMBRUN;NULL;NULL;04 92 43 46 44;NULL;23418;NULL;
-253743;FX;MANCEAU DENIS;A;49 ETRICHE;NULL;NULL;02 41 42 60 55;NULL;23420;NULL;
-253744;FX;MONVOISIN;A+;35 GOVEN;NULL;NULL;02 99 05 93 97;NULL;23421;NULL;
-253745;FX;POINT P BRETAGNE DINAN;A;22 DINAN;NULL;NULL;02 96 39 60 74;NULL;23422;NULL;
-253746;FX;BATI DECOR 2B;NULL;20 BIGUGLIA;NULL;NULL;04 95 33 40 47;NULL;23448;NULL;
-253747;FX;ARNAULT DIFFUSION;A;86 MIGNE AUXA;NULL;NULL;05 49 18 28 60;isabelle(a)stores.rideaux.com;23456;NULL;
-253748;FX;ARNAULT DIFFUSION;A;86 MIGNE AUXA;NULL;NULL;05 49 18 28 60;NULL;23456;NULL;
-253749;FX;LUYTON PATRICK;B;26 SAINT SORL;NULL;NULL;04 75 31 60 07;NULL;23458;NULL;
-253750;FX;FUNFROCK PASCAL;NULL;67 MARLENHEIM;NULL;NULL;03 88 87 79 80;NULL;23462;NULL;
-253751;FX;AIRIAU SERRURERIE;A;13 LA CIOTAT;NULL;NULL;04 42 08 97 85;NULL;23473;NULL;
-253752;FX;SYTAG SA;NULL;CH 1219 GENEV;NULL;NULL;0 ;NULL;23483;NULL;
-253753;FX;DA SILVA FERNAND;A;32 ISLE JOURD;NULL;NULL;05 62 07 28 75;NULL;23484;NULL;
-253754;FX;GREMMEL J. ET CIE;A+;67 ESCHAU;NULL;NULL;03 88 68 50 56;NULL;23526;NULL;
-253755;FX;WEINSTEIN ET FILS;A+;67 SARRE UNIO;NULL;NULL;03 88 00 30 44;NULL;23527;NULL;
-253756;FX;THERMIDOR;NULL;22 HENON;NULL;NULL;02 96 73 50 29;NULL;23530;NULL;
-253757;FX;BOURDIN;A;49 VARENNES S;NULL;NULL;02 41 51 49 90;NULL;23538;NULL;
-253758;FX;TONY SERVICES SABA ANTONIO;A+;38 ROCHETOIRI;NULL;NULL;04 74 18 01 90;NULL;23539;NULL;
-253759;FX;SERRURERIE NEBATI;A;78 FONTENAY L;NULL;NULL;01 30 58 38 50;NULL;23549;NULL;
-253760;FX;MGM ALU MENUISERIE GALE 419;NULL;13 AUBAGNE;NULL;NULL;04 42 18 72 31;NULL;23551;NULL;
-253761;FX;TOURAINE MIROITERIE;A;37 TOURS;NULL;NULL;02 47 37 76 90;NULL;23555;NULL;
-253762;FX;LUMALE;A;40 MONT DE MA;NULL;NULL;05 58 75 08 94;NULL;23556;NULL;
-253763;FX;LE QUERE ANDRE;A;21 CHENOVE;NULL;NULL;03 80 58 85 08;NULL;23565;NULL;
-253764;FX;SAGA AMENAGEMENTS RAYMOND MICH;A;38 CHAPAREILL;NULL;NULL;04 76 45 20 08;NULL;23567;NULL;
-253765;FX;SAGA AMENAGEMENTS RAYMOND MICH;A;38 CHAPAREILL;NULL;NULL;04 76 45 20 08;mic.co.raymond(a)wanadoo.fr;23567;NULL;
-253766;FX;ABAC SLC STORES;NULL;75 PARIS;NULL;NULL;01 60 46 23 19;NULL;23585;NULL;
-253767;FX;TOUTBOIS AGENCEMENT;A;69 DECINES CH;NULL;NULL;04 78 49 45 97;NULL;23608;NULL;
-253768;FX;TERRIER J. CLAUDE;NULL;61 MESSEI;NULL;NULL;02 33 96 00 40;NULL;23613;NULL;
-253769;FX;CLOMEN;A;81 ALBI;NULL;NULL;05 63 38 13 65;NULL;23620;NULL;
-253770;FX;GIRAUD BARDOUX;NULL;76 OISSEL;NULL;NULL;02 32 91 31 98;achat(a)giraud-bardoux.fr;23625;NULL;
-253771;FX;HABITAT ET STORES ROGER;B;38 BOURGOIN J;NULL;NULL;04 74 28 64 76;NULL;23646;NULL;
-253772;FX;CHAUSSON TRIALIS SUD EST;NULL;84 VALREAS;NULL;NULL;04 90 37 44 29;NULL;23648;NULL;
-253773;FX;CONFORT ISOLATION;B;21 SENNECEY L;NULL;NULL;03 80 47 07 19;NULL;23649;NULL;
-253774;FX;GERBAT;D;27 Beuzeville;NULL;NULL;02 31 63 63 60;NULL;23655;NULL;
-253775;FX;INDUSTRIAS BEC;B;ES 50 ARENYS;NULL;NULL;349 37 92 49 22;bec(a)bec.es;23664;NULL;
-253776;FX;INDUSTRIAS BEC;B;ES 50 ARENYS;NULL;NULL;349 32 25 06 85;killian(a)bec.es;23664;NULL;
-253777;FX;INDUSTRIAS BEC;B;ES 50 ARENYS;NULL;NULL;349 37 92 49 22;NULL;23664;NULL;
-253778;FX;LOUVIER;A;66 LAROQUE-DE;NULL;NULL;04 68 89 67 74;NULL;23677;NULL;
-253779;FX;THALMANN;D;69 MARCY L'ET;NULL;NULL;04 78 87 82 94;NULL;23678;NULL;
-253780;FX;CL DIVERS SUD EST ATC LANGUEDOC;A;30 L.;NULL;NULL;0 ;NULL;23681;NULL;
-253781;FX;VERRE CLAIR;B;60 SAINT MAXI;NULL;NULL;03 44 64 40 64;NULL;23686;NULL;
-253782;FX;ESPACE LE GOFF;A;56 CRAC'H;NULL;NULL;02 97 50 74 42;NULL;23689;NULL;
-253783;FX;FOURNIER;D;91 MONTGERON;NULL;NULL;01 69 52 37 72;stefournier91(a)orange.fr;23702;NULL;
-253784;FX;BERVAS;D;29 PLOUESCAT;NULL;NULL;02 98 61 93 35;NULL;23716;NULL;
-253785;FX;LENOIR METALLERIE;A+;69 VILLEURBAN;NULL;NULL;04 72 97 04 04;jfgauthier(a)lenoirmetallerie.fr;23719;NULL;
-253786;FX;LENOIR METALLERIE;A+;69 VILLEURBAN;NULL;NULL;04 72 97 04 04;NULL;23719;NULL;
-253787;FX;PXR;D;77 SAMOREAU;NULL;NULL;01 64 24 54 07;NULL;23727;NULL;
-253788;FX;SAMSE DIGNE;A;04 DIGNE;NULL;NULL;04 92 32 25 71;NULL;23760;NULL;
-253789;FX;COULON ET FILS;D;75 PARIS;NULL;NULL;01 47 20 10 33;NULL;23767;NULL;
-253790;FX;LE BALC'H VERANDAS 4462;NULL;22 PLOUMAGOAR;NULL;NULL;02 96 44 03 91;NULL;23781;NULL;
-253791;FX;ALU 2000;A;82 CASTELSAGR;NULL;NULL;05 63 95 69 73;NULL;23782;NULL;
-253792;FX;BOUCHET MARIE ROSE - DECO 2000;A+;58 NEVERS;NULL;NULL;03 86 37 69 12;NULL;23789;NULL;
-253793;FX;CRC COMPANHIA LDA;D;PT 0-071 ALDE;NULL;NULL;3512 12 10 07 62;NULL;23796;NULL;
-253794;FX;CRC COMPANHIA LDA;D;PT 0-071 ALDE;NULL;NULL;3512 13 62 12 65;NULL;23796;NULL;
-253795;FX;CRC COMPANHIA LDA;D;PT 0-071 ALDE;NULL;NULL;3512 13 62 12 65;carlosjosecosta(a)crc.pt;23796;NULL;
-253796;FX;MARINIER MAT. BOURG S/AND;NULL;84 VALREAS CE;NULL;NULL;04 75 54 53 99;NULL;23800;NULL;
-253797;FX;STORE DES ILES;A;MU TRE BORNES;NULL;NULL;23 04 24 35 53;sdesil(a)intnet.mu;23813;NULL;
-253798;FX;BAIE OUEST LORIENT;D;56 LORIENT;NULL;NULL;02 97 64 61 06;NULL;23819;NULL;
-253799;FX;NEW DECOR;A;76 LE HAVRE;NULL;NULL;02 35 28 14 74;NULL;23820;NULL;
-253800;FX;BAIE OUEST VANNES SAS PILORGER;D;56 PLOEREN;NULL;NULL;02 97 46 58 92;baie.ouest.vannes(a)wanadoo.fr;23821;NULL;
-253801;FX;CHAUSSON TRIALIS CARPENTRAS;NULL;84 CARPENTRAS;NULL;NULL;04 90 67 36 29;NULL;23838;NULL;
-253802;FX;AUDOUIN;A;61 ALENCON;NULL;NULL;02 33 29 25 43;NULL;23852;NULL;
-253803;FX;GOHON ALAIN;A;14 LISIEUX;NULL;NULL;02 31 62 05 92;NULL;23873;NULL;
-253804;FX;FABRIPOSE;A;72 ARCONNAY;NULL;NULL;02 33 29 46 02;fabripose(a)wanadoo.fr;23875;NULL;
-253805;FX;TEXIA 4812;A;64 PAU;NULL;NULL;0 ;NULL;23879;NULL;
-253806;FX;ALPHA BAIE;A+;31 TOULOUSE;NULL;NULL;05 61 62 01 81;NULL;23888;NULL;
-253807;FX;ALLAIRE PHILIPPE;A;44 ST BREVIN;NULL;NULL;02 40 39 13 43;NULL;23890;NULL;
-253808;FX;TONDOUX NICOLAS;D;35 LUITRE;NULL;NULL;02 99 97 94 51;NULL;23892;NULL;
-253809;FX;MIROITERIE CANNOISE MC;A;06 MOUGINS;NULL;NULL;04 92 92 16 17;NULL;23898;NULL;
-253810;FX;SMRB (STE MENUISERIE;A;45 SULLY SUR;NULL;NULL;02 38 36 29 04;NULL;23899;NULL;
-253811;FX;MAISON CONFORT 4386;A;MA ABLANCA;NULL;NULL;212 22 39 41 40;NULL;23906;NULL;
-253812;FX;NUVOLI PIERRE -MAISON ISOLATION;B;20 BASTIA;NULL;NULL;04 95 31 18 59;NULL;23907;NULL;
-253813;FX;ESPACE MENUISERIE ET;A;37 NAZELLES N;NULL;NULL;02 47 57 46 65;NULL;23909;NULL;
-253814;FX;GEDIMAT UNIBOIS;B;70 LURE;NULL;NULL;03 84 62 72 28;NULL;23910;NULL;
-253815;FX;SICARD VERANDAS;A+;37 TOURS;NULL;NULL;02 47 56 77 95;NULL;23916;NULL;
-253816;FX;POINT P MERIDIONALE BEZIERS;A+;34 BEZIERS CE;NULL;NULL;04 67 49 76 49;NULL;23937;NULL;
-253817;FX;POINT P MERIDIONALE BEZIERS;A+;34 BEZIERS CE;NULL;NULL;05 65 46 12 22;NULL;23937;NULL;
-253818;FX;POINT P MERIDIONALE BEZIERS;A+;34 BEZIERS CE;NULL;NULL;05 34 01 38 20;NULL;23937;NULL;
-253819;FX;POINT P MERIDIONALE CARCASSONN;A;11 CARCASSONN;NULL;NULL;04 68 72 54 81;NULL;23938;NULL;
-253820;FX;POINT P MERIDIONALE PERPIGNAN;A;34 BEZIERS CE;NULL;NULL;04 68 55 70 69;NULL;23940;NULL;
-253821;FX;POINT P MERIDIONALE NIMES;A;34 BEZIERS CE;NULL;NULL;04 66 04 81 99;NULL;23942;NULL;
-253822;FX;MEGNIEN SIMA NIORT;NULL;79 NIORT;NULL;NULL;05 49 17 22 29;NULL;23951;NULL;
-253823;FX;MEGNIEN SIMA LUCON;NULL;85 LUCON;NULL;NULL;02 51 56 81 81;NULL;23952;NULL;
-253824;FX;CHEVALIER;A+;21 POUILLY EN;NULL;NULL;03 80 90 88 44;contact(a)chevalier-sa.fr;23956;NULL;
-253825;FX;AREA (STE DES AUTOROUTES;A;69 BRON CEDEX;NULL;NULL;0 ;NULL;23969;NULL;
-253826;FX;TROUILLARD POINT P PDL THOUARS;A;79 THOUARS;NULL;NULL;05 49 96 36 89;NULL;23979;NULL;
-253827;FX;RIDONET LORRAINE;A+;54 POMPEY;NULL;NULL;03 83 24 37 84;ridonet(a)orange.fr;23991;NULL;
-253828;FX;AD DIFFUSION;A;77 SAINT PIER;NULL;NULL;01 64 78 51 59;NULL;23993;NULL;
-253829;FX;AD DIFFUSION;A;77 SAINT PIER;NULL;NULL;01 64 22 37 98;NULL;23993;NULL;
-253830;FX;COSVAL;NULL;13 SALON DE P;NULL;NULL;04 90 56 70 40;NULL;23995;NULL;
-253831;FX;ROTGE FRANCOIS;A;83 FREJUS;NULL;NULL;04 94 69 92 61;rotgepvm(a)live.fr;23998;NULL;
-253832;FX;CHAUSSON TRIALIS MONTELIMAR;NULL;84 VALREAS CE;NULL;NULL;04 75 51 35 78;NULL;24001;NULL;
-253833;FX;POYADE STORES;NULL;03 VICHY;NULL;NULL;04 70 97 63 71;NULL;24015;NULL;
-253834;FX;BILDSTEIN JEAN JACQUES;A;68 HATTSTATT;NULL;NULL;09 71 70 40 56;jean-jacques.bildstein(a)wanadoo.fr;24016;NULL;
-253835;FX;ROTHERMEL CHARLES SARL;A;57 AMNEVILLE;NULL;NULL;03 87 72 07 29;NULL;24019;NULL;
-253836;FX;ROTHERMEL CHARLES SARL;A;57 AMNEVILLE;NULL;NULL;03 87 71 82 06;NULL;24019;NULL;
-253837;FX;ROTHERMEL CHARLES SARL;A;57 AMNEVILLE;NULL;NULL;03 87 71 82 06;virginie.sar(a)rothermel.fr;24019;NULL;
-253838;FX;GEDIMAT GARNIER;A;72 ST PATERNE;NULL;NULL;02 33 27 34 77;NULL;24022;NULL;
-253839;FX;IRIS 4507;NULL;10 ST THIBAUL;NULL;NULL;01 41 72 06 29;NULL;24025;NULL;
-253840;FX;GLANTENAY;D;21 VENAREY LE;NULL;NULL;03 80 96 19 37;entreprise.glantenay(a)orange.fr;24037;NULL;
-253841;FX;CHAMPIGNY FERMETURES;A;94 CHAMPIGNY;NULL;NULL;01 45 16 91 56;NULL;24043;NULL;
-253842;FX;LESSAGE DANIEL;NULL;72 SAINT SATU;NULL;NULL;02 43 25 65 46;NULL;24055;NULL;
-253843;FX;SUD OUEST CLOTURES 2;A;11 NARBONNE C;NULL;NULL;04 68 41 11 23;NULL;24056;NULL;
-253844;FX;RICARD GILBERT;A;81 MAZAMET;NULL;NULL;05 63 98 98 87;NULL;24065;NULL;
-253845;FX;AVH AMELIORATION DE VOTRE;A;89 TURNY;NULL;NULL;09 71 70 14 82;contact(a)avh89.fr;24068;NULL;
-253846;FX;REISSER KURT;NULL;DE 6829 LANDA;NULL;NULL;49 63 41 35 84;NULL;24077;NULL;
-253847;FX;OUEST OUVERTURES;A;35 FOUGERES;NULL;NULL;02 99 99 50 91;NULL;24078;NULL;
-253848;FX;STORES ALPAGO;A;24 EYMET;NULL;NULL;05 53 23 75 95;NULL;24080;NULL;
-253849;FX;VRIGNAUD VEILLET NELLY;A;17 SAINTES;NULL;NULL;05 46 92 03 72;tonyveillet(a)orange.fr;24085;NULL;
-253850;FX;COMASUD SICOBOIS;A+;13 MARSEILLE;NULL;NULL;04 94 75 69 69;NULL;24088;NULL;
-253851;FX;REZIG MICHEL;A;95 SARCELLES;NULL;NULL;01 34 38 07 30;NULL;24095;NULL;
-253852;FX;STORES 35;A;35 DOMLOUP;NULL;NULL;02 99 37 47 66;NULL;24111;NULL;
-253853;FX;FRANCE FERMETURES;A;77 VILLEMER;NULL;NULL;01 69 09 18 85;NULL;24112;NULL;
-253854;FX;FRANCE FERMETURES;A;77 VILLEMER;NULL;NULL;01 64 24 90 25;NULL;24112;NULL;
-253855;FX;CL DIVERS SUD EST F.LEBEL;A;73 L.;NULL;NULL;02 99 14 86 44;NULL;24114;NULL;
-253856;FX;SEGRIM;A;13 LES PENNES;NULL;NULL;04 91 51 28 20;NULL;24118;NULL;
-253857;FX;SODIMAF (STE DIFFUSION;A;77 CRECY LA C;NULL;NULL;01 64 63 88 37;NULL;24128;NULL;
-253858;FX;FRANCE FERMETURES SAS;A+;74 MEYTHET;NULL;NULL;04 50 52 83 21;NULL;24132;NULL;
-253859;FX;RHEIN CHRISTIAN;B;63 CLERMONT F;NULL;NULL;04 73 92 45 60;NULL;24135;NULL;
-253860;FX;HERTRICH FRANCOIS;NULL;83 ROQUEBRUNE;NULL;NULL;04 94 44 05 63;NULL;24146;NULL;
-253861;FX;JLC 45;D;45 ORLEANS CE;NULL;NULL;02 38 63 88 37;NULL;24148;NULL;
-253862;FX;JLC 45;D;45 ORLEANS CE;NULL;NULL;02 38 64 09 47;NULL;24148;NULL;
-253863;FX;CASTOR DEVELOPPEMENT 4675;NULL;94 SAINT MAUR;NULL;NULL;01 48 89 00 05;NULL;24179;NULL;
-253864;FX;TROUILLARD POINT P PDL AIRVAULT;A;79 AIRVAULT;NULL;NULL;05 49 70 80 23;NULL;24188;NULL;
-253865;FX;LE CHEVILLER H.;B;97 KOUROU CED;NULL;NULL;05 94 32 07 74;llechevil(a)wanadoo.fr;24192;NULL;
-253866;FX;LVI BOURGOGNE STE NVELLE;A;21 POUILLY EN;NULL;NULL;03 80 90 74 70;NULL;24202;NULL;
-253867;FX;MIROITERIE SERVICES;A;56 AURAY;NULL;NULL;02 97 24 80 06;NULL;24205;NULL;
-253868;FX;DT ALU;A;94 VALENTON;NULL;NULL;01 43 89 41 25;NULL;24208;NULL;
-253869;FX;BAR ALU;A;13 MARSEILLE;NULL;NULL;04 91 94 25 07;NULL;24213;NULL;
-253870;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;3512 32 76 77 79;carina.francisco(a)martifer.com;24215;NULL;
-253871;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;05 56 24 07 27;NULL;24215;NULL;
-253872;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;334 37 85 13 65;sidonie.marvalin(a)heytens.be;24215;NULL;
-253873;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;stephanethesin(a)numrs.com;24215;NULL;
-253874;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;36 83 54 60 13;NULL;24215;NULL;
-253875;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;225 21 24 62 14;ludovic.joubert(a)ads-westafrica.com;24215;NULL;
-253876;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;412 19 43 40 08;NULL;24215;NULL;
-253877;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;NULL;NULL;24215;NULL;
-253878;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;01 44 08 62 02;tpoletti(a)viguier.com;24215;NULL;
-253879;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;glpiat(a)ballastinternational.com;24215;NULL;
-253880;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;3902 90 37 65 50;raffaele.rome(a)metalsigma.it;24215;NULL;
-253881;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;kurt.vanmeerhaeghe(a)kyotecgroup.com;24215;NULL;
-253882;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;01 49 97 92 32;damien.cochet(a)kyotecgroup.fr;24215;NULL;
-253883;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;04 78 08 86 32;rchevallard(a)2jpc.com;24215;NULL;
-253884;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;332 40 51 11 43;erbosmia(a)aol.com;24215;NULL;
-253885;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;l.basseville(a)free.fr;24215;NULL;
-253886;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;01 40 86 55 33;NULL;24215;NULL;
-253887;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;morganequeralto(a)numrs.com;24215;NULL;
-253888;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;estelle(a)ikedeco.com;24215;NULL;
-253889;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;NULL;24215;NULL;
-253890;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;mohamed.ghaleb(a)club-internet.fr;24215;NULL;
-253891;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;04 50 96 70 91;NULL;24215;NULL;
-253892;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;becht(a)mbm-konstruktionen.de;24215;NULL;
-253893;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;santos.urtzi(a)gmail.com;24215;NULL;
-253894;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;richardd(a)netvision.net.il;24215;NULL;
-253895;FX;EQUIP'HABITAT;A;87 LIMOGES;NULL;NULL;05 55 01 25 22;NULL;24218;NULL;
-253896;FX;LETORDS THIERRRY;A;94 ST MAUR DE;NULL;NULL;01 48 83 00 05;NULL;24231;NULL;
-253897;FX;VMM VERANDAS MENUIS MONTGAILL;A+;65 TARBES;NULL;NULL;05 62 34 00 05;NULL;24236;NULL;
-253898;FX;MARSOLLIER DIDIER;A;35 Rennes;NULL;NULL;02 99 44 15 94;d.marsollier(a)free.fr;24245;NULL;
-253899;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 34;courtry(a)afd-verandas.com;24252;NULL;
-253900;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 33;NULL;24252;NULL;
-253901;FX;AFD;D;36 LA CHATRE;NULL;NULL;04 76 24 16 23;NULL;24252;NULL;
-253902;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 58 47;courtry(a)afd-verandas.com;24252;NULL;
-253903;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 34;be(a)afd-verandas.com;24252;NULL;
-253904;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 58 47;NULL;24252;NULL;
-253905;FX;AFD;D;36 LA CHATRE;NULL;NULL;02 54 48 61 58;lachatre(a)afd-verandas.com;24252;NULL;
-253906;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 41;barfuss_mederic(a)afd-verandas.com;24252;NULL;
-253907;FX;AFD;D;36 LA CHATRE;NULL;NULL;02á54á48á4182;clement.aupart(a)afd-verandas.com;24252;NULL;
-253908;FX;AFD;D;36 LA CHATRE;NULL;NULL;02 54 48 61 58;NULL;24252;NULL;
-253909;FX;DA SILVA ANTONIO FIB FERMETURE;A;91 MORANGIS;NULL;NULL;01á60129678;antonio.da-silva0361(a)orange.fr;24255;NULL;
-253910;FX;ROBINEAU;A;37 ST NICOLAS;NULL;NULL;02 47 97 47 30;NULL;24258;NULL;
-253911;FX;BOUCHER FABRICE;A;93 Aubervilli;NULL;NULL;01 69 90 10 06;zine.93(a)wanadoo.fr;24260;NULL;
-253912;FX;SAMSE ALBERTVILLE;A;73 ALBERTVILL;NULL;NULL;04 79 37 18 47;NULL;24262;NULL;
-253913;FX;SUREAU;NULL;89 MAGNY;NULL;NULL;03 86 33 02 10;NULL;24265;NULL;
-253914;FX;ALU SPINACE;A+;38 LE TOUVET;NULL;NULL;04 76 08 40 28;NULL;24283;NULL;
-253915;FX;LEMOINE DECORATION;A;41 MONTRICHAR;NULL;NULL;02 54 32 24 27;NULL;24284;NULL;
-253916;FX;QUINETTE YVON;D;50 SAINT LO;NULL;NULL;02 33 55 81 21;NULL;24296;NULL;
-253917;FX;EXPLOITATION FRANCE ENTRETIEN;A;13 MARSEILLE;NULL;NULL;04 91 54 07 80;francentretien(a)wanadoo.fr;24305;NULL;
-253918;FX;EXPLOITATION FRANCE ENTRETIEN;A;13 MARSEILLE;NULL;NULL;04 91 54 07 80;NULL;24305;NULL;
-253919;FX;COUSSINS MATELAS;B;38 ST CLAIR D;NULL;NULL;04 74 97 86 92;NULL;24308;NULL;
-253920;FX;OMBRE PINGEOT;A;86 CHATELLERA;NULL;NULL;05 49 23 19 03;NULL;24314;NULL;
-253921;FX;AMB;A;50 BOURGUENOL;NULL;NULL;02 33 90 04 12;NULL;24321;NULL;
-253922;FX;MELIN MATERIAUX LA CHATRE;A;36 LA CHATRE;NULL;NULL;02 54 06 09 63;NULL;24327;NULL;
-253923;FX;LES VERRERIES DU CENTRE;A;03 MONTLUCON;NULL;NULL;04 70 28 17 57;NULL;24330;NULL;
-253924;FX;LES VERRERIES DU CENTRE;A;03 MONTLUCON;NULL;NULL;0 ;NULL;24330;NULL;
-253925;FX;GUILLOT ELECT BATIMENT;B;38 GRENOBLE;NULL;NULL;04 76 49 42 61;NULL;24335;NULL;
-253926;FX;CHAUSSON TRIALIS BOLLENE;NULL;84 BOLLENE;NULL;NULL;04 90 30 05 14;NULL;24337;NULL;
-253927;FX;RETE SERGE;A;35 LOUVIGNE D;NULL;NULL;02 99 98 19 32;NULL;24338;NULL;
-253928;FX;STORES OTTAN;A;78 TRAPPES;NULL;NULL;01 30 62 24 09;NULL;24340;NULL;
-253929;FX;ALLIX DOMINIQUE;NULL;14 CABOURG;NULL;NULL;02 31 24 79 12;NULL;24358;NULL;
-253930;FX;THOMAS REMI;A;45 LA FERTE S;NULL;NULL;0 ;thomas-remi(a)orange.fr;24382;NULL;
-253931;FX;SNM ALU INDUSTRIE;A;88 LA BRESSE;NULL;NULL;03 29 25 29 66;NULL;24384;NULL;
-253932;FX;SM BOIS;A;77 CLAYE SOUI;NULL;NULL;01 60 26 03 94;NULL;24386;NULL;
-253933;FX;LOGIS CONFORT;A;35 BETTON;NULL;NULL;02 99 55 16 90;NULL;24397;NULL;
-253934;FX;LOGIS CONFORT;A;35 BETTON;NULL;NULL;02 99 55 37 44;logisconfort(a)orange.fr;24397;NULL;
-253935;FX;DE PHILIPPE BERNARD;A;89 MIGENNES;NULL;NULL;08 25 18 69 93;NULL;24404;NULL;
-253936;FX;BAUDRY - DIVISION 2;A;77 SERVON;NULL;NULL;01 60 62 60 29;NULL;24416;NULL;
-253937;FX;DELEVOYE L'OMBRE SUR BAIE;A;31 PORTET SUR;NULL;NULL;05 61 76 05 60;NULL;24424;NULL;
-253938;FX;THOMAS;A;44 ST NAZAIRE;NULL;NULL;02 40 22 46 11;NULL;24426;NULL;
-253939;FX;SERVICE ATERM;A;45 ORLEANS;NULL;NULL;02 38 62 84 09;NULL;24431;NULL;
-253940;FX;CHAMBON;A;71 SEMUR EN B;NULL;NULL;03 85 25 43 57;NULL;24438;NULL;
-253941;FX;PICHARD;A;45 MARIGNY LE;NULL;NULL;02 38 75 14 85;NULL;24442;NULL;
-253942;FX;CLEMENT ALAIN;A;77 VILLEPARIS;NULL;NULL;01 64 67 20 41;NULL;24447;NULL;
-253943;FX;HAINCOURT BERTRAND;NULL;61 LE THEIL;NULL;NULL;02 37 49 77 40;NULL;24450;NULL;
-253944;FX;ILE DE FRANCE FERMETURE 4489;NULL;78 VERNOUILLE;NULL;NULL;01 39 71 68 62;NULL;24464;NULL;
-253945;FX;CARRE MARCEL;A+;38 PONT DE BE;NULL;NULL;04 76 37 04 90;NULL;24467;NULL;
-253946;FX;ISOLA 2000 4833;NULL;93 LE RAINCY;NULL;NULL;01 43 02 73 92;NULL;24469;NULL;
-253947;FX;CHAUSSON TRIALIS ST MITRE;NULL;13 SAINT MITR;NULL;NULL;04 42 80 93 33;NULL;24484;NULL;
-253948;FX;DENJEAN;A;69 ST MARTIN;NULL;NULL;04 78 48 51 72;NULL;24491;NULL;
-253949;FX;DENJEAN;A;69 ST MARTIN;NULL;NULL;04 78 48 51 72;ets.denjean(a)wanadoo.fr;24491;NULL;
-253950;FX;MOTIN JACKY- STORES DUBOIS;NULL;50 SAINT LO;NULL;NULL;02 33 05 30 89;NULL;24493;NULL;
-253951;FX;DECORA STORES EURL;D;31 RAMONVILLE;NULL;NULL;05 61 75 06 80;NULL;24500;NULL;
-253952;FX;CL DIVERS SUD OUEST J GIRAUD;A;32 Auch;NULL;NULL;02 99 14 83 79;NULL;24502;NULL;
-253953;FX;ALU BORMES STORES;A;83 BORMES LES;NULL;NULL;0 ;alubormestores(a)wanadoo.fr;24507;NULL;
-253954;FX;RESEAU PRO VACHERAND;NULL;02 SOISSONS C;NULL;NULL;03 23 73 09 29;NULL;24515;NULL;
-253955;FX;JPA ENTRETIEN;A+;38 L'ALPE D'H;NULL;NULL;04 76 80 63 01;NULL;24517;NULL;
-253956;FX;BOHEMIAFLEX CS SRO;D;CZ 05 OPAVA 5;NULL;NULL;4205 53 73 19 94;ivana(a)bohemiaflex-cs.cz;24523;NULL;
-253957;FX;BOHEMIAFLEX CS SRO;D;CZ 05 OPAVA 5;NULL;NULL;4205 53 73 19 94;NULL;24523;NULL;
-253958;FX;FASS;D;35 SAINT GREG;NULL;NULL;08 11 38 96 47;fass35(a)gmail.com;24526;NULL;
-253959;FX;CORNET MIROITERIE RJ;NULL;13 MARSEILLE;NULL;NULL;04 91 35 54 32;NULL;24531;NULL;
-253960;FX;LEMOINE STORE DECO;A+;02 SAINT-QUEN;NULL;NULL;03 23 67 81 40;NULL;24549;NULL;
-253961;FX;VGSM VOLETS GRILLES;D;92 CHATENAY M;NULL;NULL;01 47 02 36 26;NULL;24554;NULL;
-253962;FX;RHONIBAT;D;69 BRIGNAIS;NULL;NULL;04 78 05 41 66;secretariat(a)rhonibat.com;24567;NULL;
-253963;FX;RHONIBAT;D;69 BRIGNAIS;NULL;NULL;04 78 05 41 66;NULL;24567;NULL;
-253964;FX;TAPISSERIE LONGEAU;A;86 VOUILLE;NULL;NULL;05 49 51 79 14;NULL;24573;NULL;
-253965;FX;MVB (MIROITERIE VITRERIE;A+;27 BERNAY;NULL;NULL;02 32 46 59 10;NULL;24583;NULL;
-253966;FX;FMBA (FRANCHOMME 4055;NULL;62 COURCELLES;NULL;NULL;16 21 77 88 99;NULL;24602;NULL;
-253967;FX;ISOMAT;A;67 BERGBIETEN;NULL;NULL;0 ;NULL;24604;NULL;
-253968;FX;EURAL TECH 4771;A;06 NICE;NULL;NULL;04 93 26 31 11;NULL;24630;NULL;
-253969;FX;AEF (AGENCE EUROPEENNE;A+;75 PARIS;NULL;NULL;01 45 42 00 10;NULL;24632;NULL;
-253970;FX;MEGNIEN SNBM CHANTELOUP;NULL;86 VOUNEUIL S;NULL;NULL;0 ;NULL;24644;NULL;
-253971;FX;ATELIER DU BOIS 302940;NULL;44 ARTHON EN;NULL;NULL;02 40 21 25 01;NULL;24649;NULL;
-253972;FX;AUCLAIR HERVE;D;01 BEYNOST;NULL;NULL;04 78 06 42 87;entreprise-auclair(a)sfr.fr;24653;NULL;
-253973;FX;BROSOLO PIERRE EDOUARD;D;56 QUIBERON;NULL;NULL;02 97 50 42 75;NULL;24660;NULL;
-253974;FX;ATALU SAS;A;67 ERSTEIN CX;NULL;NULL;03 88 59 81 10;NULL;24661;NULL;
-253975;FX;BIG MAT MOUYSSET SAMABOIS;A;12 MILLAU;NULL;NULL;05 65 61 38 62;NULL;24665;NULL;
-253976;FX;CL DIVERS OUEST D. JEANNE;NULL;14 R;NULL;NULL;02 99 14 63 08;NULL;24670;NULL;
-253977;FX;SOFRADI;D;44 TREILLIERE;NULL;NULL;02 28 01 22 35;michel(a)sofradi.fr;24675;NULL;
-253978;FX;SOFRADI;D;44 TREILLIERE;NULL;NULL;01 28 01 22 35;NULL;24675;NULL;
-253979;FX;SOFRADI;D;44 TREILLIERE;NULL;NULL;02 28 01 22 35;NULL;24675;NULL;
-253980;FX;DECORS DE L'HABITAT;A+;35 PACE;NULL;NULL;02 99 69 03 04;NULL;24678;NULL;
-253981;FX;FLAMANT INDUSTRIE 4353;NULL;59 RAISMES;NULL;NULL;03 27 36 85 58;NULL;24680;NULL;
-253982;FX;FLAMANT INDUSTRIE 4353;NULL;59 RAISMES;NULL;NULL;03 27 32 47 90;NULL;24680;NULL;
-253983;FX;BATIMAG;A;51 SAINTE MEN;NULL;NULL;03 26 60 14 51;NULL;24688;NULL;
-253984;FX;MENUISERIE PARRET;NULL;69 MESSIMY;NULL;NULL;04 78 45 15 29;cyrille.parret(a)orange.fr;24690;NULL;
-253985;FX;SCOB STE DE CONSTRUCTION;A;35 BREAL S/S;NULL;NULL;02 23 41 16 17;scob.rennes(a)wanadoo.fr;24695;NULL;
-253986;FX;ISOLATION SERVICE;NULL;36 LE BLANC;NULL;NULL;0 ;NULL;24696;NULL;
-253987;FX;GORET;A;72 LA FLECHE;NULL;NULL;02 43 94 00 81;NULL;24698;NULL;
-253988;FX;ALU CONFORT;A+;59 LOMME;NULL;NULL;03 20 93 21 55;NULL;24706;NULL;
-253989;FX;VENIER WALTER - ACTIBA;A;57 SAINT AVOL;NULL;NULL;03 87 94 59 92;NULL;24715;NULL;
-253990;FX;BREGERAS FREDERIC;A;24 MARSAC S/L;NULL;NULL;05 53 54 88 95;NULL;24734;NULL;
-253991;FX;GEDIMAT GUENEE MATERIAUX;A;35 LOUVIGNE D;NULL;NULL;02 99 98 13 66;NULL;24743;NULL;
-253992;FX;CANTARELLI SERGE - EGPS;A;83 Seyne-sur-;NULL;NULL;04 94 06 78 20;egps(a)sfr.fr;24753;NULL;
-253993;FX;RESEAU PRO BATI DECOR ST BRICE;NULL;54 NANCY;NULL;NULL;03 26 87 37 10;NULL;24757;NULL;
-253994;FX;RESEAU PRO BATI DECORFAGNIERES;NULL;54 NANCY;NULL;NULL;03 26 64 70 38;NULL;24758;NULL;
-253995;FX;VALLADON;A;92 MONTROUGE;NULL;NULL;01 46 57 92 13;valladon.sa(a)wanadoo.fr;24769;NULL;
-253996;FX;GEDIMAT SPIRE;A;80 HARLEVILLE;NULL;NULL;03 24 33 79 80;f.jumeau(a)gedimat.fr;24776;NULL;
-253997;FX;GEDIMAT SPIRE;A;80 HARLEVILLE;NULL;NULL;03 24 33 79 80;NULL;24776;NULL;
-253998;FX;PELLEREI JEAN - MARIE;A;60 MONCEAUX;NULL;NULL;03 44 70 06 93;NULL;24778;NULL;
-253999;FX;GOBERT MENUISERIE;NULL;59 MAING;NULL;NULL;03 27 40 23 09;NULL;24784;NULL;
-254000;FX;ASCI ROY;NULL;91 CROSNE;NULL;NULL;01 69 48 34 56;NULL;24785;NULL;
-254001;FX;TANGUY;A+;29 LANNILIS;NULL;NULL;02 98 04 05 80;NULL;24831;NULL;
-254002;FX;ZANCANARO;A+;07 CHARMES SU;NULL;NULL;04 75 60 87 16;zancanaro-menuiserie(a)wanadoo.fr;24845;NULL;
-254003;FX;LA MAISON DUARTE 4388;NULL;57 SARREBOURG;NULL;NULL;0 ;NULL;24852;NULL;
-254004;FX;ASF ATELIER SERRURERIE;A;29 PLABENNEC;NULL;NULL;02 98 37 92 02;NULL;24853;NULL;
-254005;FX;TROUILLARD POINT P PDL ANCENIS;A;44 ANCENIS;NULL;NULL;02 40 96 35 98;NULL;24874;NULL;
-254006;FX;TROUILLARD POINT P PDL ANGERS;A;49 ANGERS;NULL;NULL;02 41 43 34 91;NULL;24884;NULL;
-254007;FX;TROUILLARD POINT P PDL CHOLET;A;49 CHOLET;NULL;NULL;02á41á75á2249;NULL;24886;NULL;
-254008;FX;TROUILLARD POINT P PDL SAUMUR;A;49 SAUMUR;NULL;NULL;02 41 67 70 16;NULL;24888;NULL;
-254009;FX;POINT P PDL CERIZAY;A;79 CERIZAY;NULL;NULL;05 49 80 00 81;NULL;24889;NULL;
-254010;FX;AID 4721;A;92 GARCHES;NULL;NULL;01 47 41 95 05;NULL;24893;NULL;
-254011;FX;GABORIT JR;A;79 TERVES;NULL;NULL;05 49 80 60 60;NULL;24894;NULL;
-254012;FX;SERAG;B;38 MONTBONNOT;NULL;NULL;04 76 41 83 36;NULL;24899;NULL;
-254013;FX;ROGER CDB;A;80 DURY;NULL;NULL;03 22 95 18 18;NULL;24906;NULL;
-254014;FX;ORCH- ORGANISATION RENOV CONSE;A;76 MAUQUENCHY;NULL;NULL;02 35 90 35 39;NULL;24916;NULL;
-254015;FX;JOCK S;A;78 ARNOUVILLE;NULL;NULL;01 30 93 95 54;NULL;24920;NULL;
-254016;FX;TROUILLARD POINT P PDL;A;85 ST GILLES;NULL;NULL;02 51 55 16 36;NULL;24933;NULL;
-254017;FX;GARNIER 4030;NULL;77 MELUN;NULL;NULL;01 64 39 89 66;NULL;24934;NULL;
-254018;FX;DEGLANE;D;92 ISSY LES M;NULL;NULL;01 46 38 11 04;NULL;24935;NULL;
-254019;FX;BAIE OUEST CAEN;A;14 FLEURY SUR;NULL;NULL;02 31 74 34 69;NULL;24938;NULL;
-254020;FX;ACM MARIE;A;91 STE GENEVI;NULL;NULL;01 60 16 42 47;acm-marie(a)wanadoo.fr;24941;NULL;
-254021;FX;ACM MARIE;A;91 STE GENEVI;NULL;NULL;01 60 16 42 47;NULL;24941;NULL;
-254022;FX;POINT P BRETAGNE PLANCOET;A;22 PLANCOET;NULL;NULL;02 96 80 44 50;NULL;24952;NULL;
-254023;FX;POINT P CHAPIN CHANGE;NULL;35 RENNES CED;NULL;NULL;02 43 56 80 83;NULL;24955;NULL;
-254024;FX;GEDIMAT HOCHET EQUEURDREVILLE;A;50 EQUEURDREV;NULL;NULL;02 33 93 00 76;NULL;24957;NULL;
-254025;FX;DIALUX;A;69 VAULX EN V;NULL;NULL;04 78 49 15 16;NULL;24964;NULL;
-254026;FX;POINT P PDL LES SABLES D OLONN;A;85 LES SABLES;NULL;NULL;02 51 32 86 19;NULL;24986;NULL;
-254027;FX;PIGUET;A;69 VILLEURBAN;NULL;NULL;04 72 89 17 49;NULL;24990;NULL;
-254028;FX;HCL;D;85 LES HERBIE;NULL;NULL;02 51 67 07 00;NULL;24993;NULL;
-254029;FX;HCL;D;85 LES HERBIE;NULL;NULL;0 ;NULL;24993;NULL;
-254030;FX;CHAUSSON TRIALIS ST VALLIER;NULL;26 ST VALLIER;NULL;NULL;04 75 23 13 37;NULL;24995;NULL;
-254031;FX;CHAUSSON TRIALIS ST VALLIER;NULL;26 ST VALLIER;NULL;NULL;04 75 23 13 37;jean.bouchet(a)chausson-materiaux.fr;24995;NULL;
-254032;FX;LEJOLLY GEORGES 4178;NULL;50 CREANCES;NULL;NULL;02 33 46 29 91;NULL;25008;NULL;
-254033;FX;STORES SERVISYSTEM;B;CH 1258 PERLY;NULL;NULL;412 27 71 03 73;storesservisustem(a)bluewin.ch;25011;NULL;
-254034;FX;STORES SERVISYSTEM;B;CH 1258 PERLY;NULL;NULL;412 27 71 03 73;NULL;25011;NULL;
-254035;FX;AUSUD;NULL;84 ORANGE;NULL;NULL;04 90 51 03 83;NULL;25019;NULL;
-254036;FX;CHB MIROITERIE;A;47 NERAC;NULL;NULL;05 53 65 79 31;NULL;25022;NULL;
-254037;FX;MAZILLER GUY;A;01 ST DIDIER;NULL;NULL;04 74 04 95 62;NULL;25025;NULL;
-254038;FX;ARCH;A;34 PORTIRAGNE;NULL;NULL;04 67 01 62 08;sarlarch(a)aol.com;25038;NULL;
-254039;FX;MIROITERIE DE L'OUEST ARMORIQU;A;56 CAUDAN;NULL;NULL;02 97 76 78 44;NULL;25039;NULL;
-254040;FX;MIROITERIE DE L'OUEST ARMORIQU;A;56 CAUDAN;NULL;NULL;02 97 76 86 68;NULL;25039;NULL;
-254041;FX;ALPASER;B;74 LA ROCHE S;NULL;NULL;04 50 25 82 75;NULL;25042;NULL;
-254042;FX;COMPTOIR EQUIPE BAIE 5100;A;94 CACHAN;NULL;NULL;01 45 46 11 30;NULL;25043;NULL;
-254043;FX;HELP BRETAGNE - GOURVEN JACQUE;NULL;29 ROSPORDEN;NULL;NULL;02 98 57 82 98;NULL;25049;NULL;
-254044;FX;ICDS 4743;NULL;50 COUVAINS;NULL;NULL;02 33 57 53 43;NULL;25050;NULL;
-254045;FX;MELIN R. MATERIAUX LE BLANC;NULL;36 LE BLANC;NULL;NULL;02 54 37 85 16;NULL;25064;NULL;
-254046;FX;MARTINEZ FRERES;A;47 VILLENEUVE;NULL;NULL;05 53 01 29 70;NULL;25069;NULL;
-254047;FX;LADENBURGER;A;57 STE BARBE;NULL;NULL;03 87 76 88 59;ladenburger.gilles(a)wanadoo.fr;25071;NULL;
-254048;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 69 83 03 80;NULL;25073;NULL;
-254049;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 64 54 38 51;NULL;25073;NULL;
-254050;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 69 28 73 17;pointp-lesulis-menuiserie(a)saint-gobain.com;25073;NULL;
-254051;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 34 50 58 68;NULL;25073;NULL;
-254052;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 69 17 13 89;NULL;25073;NULL;
-254053;FX;CHAVIGNY ST DENIS;A+;28 ST DENIS L;NULL;NULL;0 ;stdenis.menuiseries(a)groupechavigny.fr;25078;NULL;
-254054;FX;CHAVIGNY ST DENIS;A+;28 ST DENIS L;NULL;NULL;02 37 44 54 85;NULL;25078;NULL;
-254055;FX;JAERLING MARC;B;LU 50 PETANGE;NULL;NULL;352 23 65 02 86;NULL;25079;NULL;
-254056;FX;FERIAUD;A;77 TOURNAN EN;NULL;NULL;01 64 25 34 88;NULL;25082;NULL;
-254057;FX;METAL OUDEAU;A;41 SAINT LAUR;NULL;NULL;02 54 87 06 70;NULL;25089;NULL;
-254058;FX;MURAT FRERES;A;24 BOULAZAC;NULL;NULL;0 ;NULL;25093;NULL;
-254059;FX;PAPON ERIC;A;19 USSEL;NULL;NULL;05 55 72 50 47;NULL;25096;NULL;
-254060;FX;LAMY 4651;NULL;72 SABLE;NULL;NULL;02 43 95 70 43;NULL;25109;NULL;
-254061;FX;AERO STORES 4598;NULL;31 BLAGNAC;NULL;NULL;05 61 71 88 14;NULL;25110;NULL;
-254062;FX;GAVARD ERIC;B;74 MARCELLAZ;NULL;NULL;04 50 31 11 90;NULL;25138;NULL;
-254063;FX;STE DE DIFFUSION DE FRANCHISES;A;31 TOULOUSE;NULL;NULL;05 61 25 24 14;NULL;25146;NULL;
-254064;FX;GTB CONSTRUCTION;A;35 RENNES;NULL;NULL;02 99 41 85 86;NULL;25156;NULL;
-254065;FX;LAVISSE DIDIER;A;94 CHOISY LE;NULL;NULL;01 48 92 04 29;NULL;25157;NULL;
-254066;FX;ALU CONCEPT;B;42 BONSON;NULL;NULL;04 77 55 10 02;NULL;25161;NULL;
-254067;FX;ALU BELLA STORES;A;13 SEPTEMES L;NULL;NULL;04 91 09 74 51;contact(a)alubellestores.fr;25163;NULL;
-254068;FX;ALU BELLA STORES;A;13 SEPTEMES L;NULL;NULL;04 91 51 92 15;NULL;25163;NULL;
-254069;FX;LYON STORES;D;69 BRON;NULL;NULL;04 72 37 03 48;NULL;25168;NULL;
-254070;FX;GUILLOUX MATERIAUX;A;50 SARTILLY;NULL;NULL;02 33 89 29 28;NULL;25191;NULL;
-254071;FX;ALU 24;A+;24 BOULAZAC;NULL;NULL;05 53 08 02 92;NULL;25193;NULL;
-254072;FX;AM3 NOUVELLE DIMENSION RJ;A;79 NIORT CEDE;NULL;NULL;05 49 79 00 90;am3nd79(a)wanadoo.fr;25195;NULL;
-254073;FX;AM3 NOUVELLE DIMENSION RJ;A;79 NIORT CEDE;NULL;NULL;05 49 79 00 90;NULL;25195;NULL;
-254074;FX;ATD (AGENCEMENT DECORAT.);B;97 KOUROU CED;NULL;NULL;05 94 32 54 10;yannick.atd(a)wanadoo.fr;25204;NULL;
-254075;FX;ATD (AGENCEMENT DECORAT.);B;97 KOUROU CED;NULL;NULL;0 ;NULL;25204;NULL;
-254076;FX;ATD (AGENCEMENT DECORAT.);B;97 KOUROU CED;NULL;NULL;05 94 32 54 10;atd.sarl(a)wanadoo.fr;25204;NULL;
-254077;FX;LAMY DANIEL;NULL;35 MONTREUIL;NULL;NULL;02 99 74 64 48;NULL;25205;NULL;
-254078;FX;MEROLLI;B;73 AIX LES BA;NULL;NULL;04 79 35 12 44;NULL;25209;NULL;
-254079;FX;MEROLLI;B;73 AIX LES BA;NULL;NULL;04 79 35 12 44;selleriemerolli(a)wanadoo.fr;25209;NULL;
-254080;FX;LOUVET MARC;A;11 TREZIERS;NULL;NULL;04 68 69 57 12;NULL;25216;NULL;
-254081;FX;MATEOS;A;45 ST JEAN DE;NULL;NULL;02 38 43 75 08;NULL;25226;NULL;
-254082;FX;TOULOUSAINE DE MIROITERIE;A;31 PLAISANCE;NULL;NULL;05 62 74 12 56;NULL;25234;NULL;
-254083;FX;ZIEGLER ETS;A;22 GRACES;NULL;NULL;02 96 40 15 61;NULL;25238;NULL;
-254084;FX;CAZENAVE;A;64 BAYONNE;NULL;NULL;05 59 50 37 39;NULL;25239;NULL;
-254085;FX;KHEOPS GUERIN;A;28 LEVES;NULL;NULL;02 37 36 50 90;NULL;25250;NULL;
-254086;FX;FALHER JEAN YVES;B;22 ROSTRENEN;NULL;NULL;0 ;NULL;25255;NULL;
-254087;FX;FALHER JEAN YVES;B;22 ROSTRENEN;NULL;NULL;02 96 24 28 63;NULL;25255;NULL;
-254088;FX;LES ARTISANS DU STORE;A;94 IVRY SUR S;NULL;NULL;01 46 71 21 22;jeanmichel.soussen(a)libertysurf.fr;25270;NULL;
-254089;FX;LES ARTISANS DU STORE;A;94 IVRY SUR S;NULL;NULL;01 46 71 21 22;NULL;25270;NULL;
-254090;FX;OJC DIFFUSION;A+;02 SAINT QUEN;NULL;NULL;03 23 67 11 09;ojc.accueil(a)orange.fr;25271;NULL;
-254091;FX;OJC DIFFUSION;A+;02 SAINT QUEN;NULL;NULL;03 23 67 11 09;NULL;25271;NULL;
-254092;FX;POINT P NOYON;D;60 NOYON;NULL;NULL;03 29 80 21 75;michele.falala(a)saint-gobain.com;25274;NULL;
-254093;FX;POINT P NOYON;D;60 NOYON;NULL;NULL;03 44 09 44 49;NULL;25274;NULL;
-254094;FX;MELIN MATERIAUX DUN;NULL;18 DUN;NULL;NULL;02 48 59 84 14;NULL;25282;NULL;
-254095;FX;APE;A;09 LAROQUE D';NULL;NULL;05 61 01 18 81;NULL;25287;NULL;
-254096;FX;ANBM ACCUEIL NEGOCE BOIS MAT;D;56 HENNEBONT;NULL;NULL;02 97 36 22 32;NULL;25290;NULL;
-254097;FX;ANBM ACCUEIL NEGOCE BOIS MAT;D;56 HENNEBONT;NULL;NULL;02 97 85 04 76;NULL;25290;NULL;
-254098;FX;VAURY ANDRE;A;45 VILLEMANDE;NULL;NULL;02 38 85 01 22;NULL;25294;NULL;
-254099;FX;GESSON JEAN CLAUDE;A;24 NONTRON;NULL;NULL;0 ;jc.gesson6(a)orange.fr;25303;NULL;
-254100;FX;GESSON JEAN CLAUDE;A;24 NONTRON;NULL;NULL;0 ;NULL;25303;NULL;
-254101;FX;CDM AVALLON;B;89 AVALLON;NULL;NULL;03 86 34 04 46;NULL;25304;NULL;
-254102;FX;DBF ENTREPRISES;A;78 Vernouille;NULL;NULL;01á77101659;dbf.entreprises(a)laposte.net;25307;NULL;
-254103;FX;SILVESTRI NICOLA;A;75 PARIS;NULL;NULL;01 43 21 73 61;NULL;25310;NULL;
-254104;FX;VESSIER ALAIN;A;29 FOUESNANT;NULL;NULL;02 98 56 24 93;NULL;25319;NULL;
-254105;FX;NUPIED CHRISTOPHE SARL;A;35 ARBRISSEL;NULL;NULL;02 99 96 46 24;NULL;25322;NULL;
-254106;FX;PETTIER;A;35 FOUGERES;NULL;NULL;02 99 94 08 73;infos(a)pettier.fr;25333;NULL;
-254107;FX;PETTIER;A;35 FOUGERES;NULL;NULL;02 99 94 08 73;NULL;25333;NULL;
-254108;FX;DORNE PIERRE;A+;26 VALENCE;NULL;NULL;04 75 42 73 18;NULL;25335;NULL;
-254109;FX;DORNE PIERRE;A+;26 VALENCE;NULL;NULL;04 75 43 44 21;sarl.dorne(a)dorne-menuiserie.com;25335;NULL;
-254110;FX;ALUPLAN;A+;31 CUGNAUX;NULL;NULL;05 62 87 32 60;NULL;25337;NULL;
-254111;FX;LORMEAU MICKAEL;A;44 COUERON;NULL;NULL;02 40 63 09 62;NULL;25338;NULL;
-254112;FX;CYB STORE;NULL;92 GENNEVILLI;NULL;NULL;01 40 85 42 23;claire.duvigneau(a)cybstores.com;25343;NULL;
-254113;FX;CYB STORE;NULL;92 GENNEVILLI;NULL;NULL;01 40 85 42 23;NULL;25343;NULL;
-254114;FX;CYB STORE;NULL;92 GENNEVILLI;NULL;NULL;01 40 85 42 23;vomscheid(a)cybstores.com;25343;NULL;
-254115;FX;CODICOM LM DECOR;A;56 AURAY;NULL;NULL;02 97 24 20 20;NULL;25345;NULL;
-254116;FX;SERRURERIE DES BUCLOS;A+;38 MEYLAN;NULL;NULL;04 76 90 16 18;muglia.buclos(a)wanadoo.fr;25346;NULL;
-254117;FX;SERRURERIE DES BUCLOS;A+;38 MEYLAN;NULL;NULL;04 76 90 16 18;NULL;25346;NULL;
-254118;FX;ALPHA BAIE ARIEGE 4908;A;09 PAMIERS;NULL;NULL;05 61 60 51 02;NULL;25348;NULL;
-254119;FX;ATELIERS EJARQUE SARL;B;73 CHALLES LE;NULL;NULL;04 79 72 79 62;forge(a)ejarque.pro;25351;NULL;
-254120;FX;ATELIERS EJARQUE SARL;B;73 CHALLES LE;NULL;NULL;04 79 72 79 62;serrurerie(a)ejarque.pro;25351;NULL;
-254121;FX;ATELIERS EJARQUE SARL;B;73 CHALLES LE;NULL;NULL;04 79 72 79 62;automatismes(a)ejarque.pro;25351;NULL;
-254122;FX;PROMOSTORE CONFORT;A;06 NICE;NULL;NULL;04 92 07 07 46;NULL;25353;NULL;
-254123;FX;SOLISO EUROPE;NULL;44 NANTES CED;NULL;NULL;02 40 93 06 72;NULL;25360;NULL;
-254124;FX;ESPINOS ROY 4243;NULL;13 MARSEILLE;NULL;NULL;04 91 66 95 45;NULL;25361;NULL;
-254125;FX;PACARY YVES - PRO VOLETS;A;34 Villeveyra;NULL;NULL;04 67 78 19 25;NULL;25362;NULL;
-254126;FX;GOUPIL JEAN SEBASTIEN;B;73 MERY;NULL;NULL;04 79 61 24 95;volets-goupil(a)hotmail.fr;25370;NULL;
-254127;FX;FERMETURES FERTOISES;NULL;72 CHERRE;NULL;NULL;0 ;NULL;25371;NULL;
-254128;FX;SOPRAL 06;B;06 ANTIBES;NULL;NULL;04 97 21 12 80;NULL;25375;NULL;
-254129;FX;ROLL STORES;A;94 IVRY SUR S;NULL;NULL;01 46 70 07 99;NULL;25387;NULL;
-254130;FX;EGL;A;13 LAMBESC;NULL;NULL;04 42 92 88 57;NULL;25388;NULL;
-254131;FX;ROUVRES & PLEINTEL;D;14 DIVES SUR;NULL;NULL;02 31 91 42 18;NULL;25396;NULL;
-254132;FX;AMB;A;91 VILLEMOISS;NULL;NULL;01 60 16 05 31;NULL;25413;NULL;
-254133;FX;BURLET ETS;D;43 SÚauve-sur;NULL;NULL;0 ;NULL;25418;NULL;
-254134;FX;BURLET ETS;D;43 SÚauve-sur;NULL;NULL;04 77 74 59 72;NULL;25418;NULL;
-254135;FX;PLURISOL;A;76 GRAND QUEV;NULL;NULL;02 35 68 03 38;r.lamy(a)plurisol.com;25421;NULL;
-254136;FX;PLURISOL;A;76 GRAND QUEV;NULL;NULL;02 35 97 16 27;NULL;25421;NULL;
-254137;FX;PLURISOL;A;76 GRAND QUEV;NULL;NULL;02 35 68 03 38;NULL;25421;NULL;
-254138;FX;DESILLES ALAIN;D;35 NOUVOITOU;NULL;NULL;02 99 37 56 39;eurl.desilles(a)orange.fr;25432;NULL;
-254139;FX;ALUVER;NULL;22 PORDIC;NULL;NULL;02 96 79 30 63;NULL;25433;NULL;
-254140;FX;MIROITERIE SEMIS RJ;A;31 TOULOUSE;NULL;NULL;05 62 47 58 01;NULL;25434;NULL;
-254141;FX;OGUEY;B;38 LE VERSOUD;NULL;NULL;04 76 77 36 44;NULL;25440;NULL;
-254142;FX;LVS INDUSTRIE;NULL;91 VIGNEUX SU;NULL;NULL;01 69 52 36 36;NULL;25447;NULL;
-254143;FX;FENETRES BOURLET;A;78 LE PECQ;NULL;NULL;01 39 14 20 25;NULL;25453;NULL;
-254144;FX;LES INTERIEURS DE ROBIEN;A+;35 RENNES;NULL;NULL;02 99 27 06 07;NULL;25462;NULL;
-254145;FX;RACINE C. ESPACE STORES FERMET;A;93 DRANCY;NULL;NULL;01 48 31 19 38;valentino117(a)voila.fr;25466;NULL;
-254146;FX;CAYEUX SOCIETE EXPLOITATION;A;76 LE PETIT Q;NULL;NULL;02 35 72 60 46;NULL;25470;NULL;
-254147;FX;ALUTEC;A;82 MONTAUBAN;NULL;NULL;05 63 20 17 92;NULL;25476;NULL;
-254148;FX;FOGLIA ABP;A;94 VINCENNES;NULL;NULL;01 43 98 15 04;NULL;25484;NULL;
-254149;FX;CHAUSSON TRIALIS DAVEZIEUX;NULL;07 DAVEZIEUX;NULL;NULL;04 75 67 79 45;NULL;25485;NULL;
-254150;FX;BAVOYSI TOLERIE INDUSTRIELLE;A;39 CHAMPAGNOL;NULL;NULL;03 84 52 12 96;NULL;25491;NULL;
-254151;FX;PLANTIER PATRICK;A+;69 AMPLEPUIS;NULL;NULL;04 74 89 28 46;NULL;25492;NULL;
-254152;FX;JPG GRANDJEAN JEAN PIERRE;B;38 VILLEFONTA;NULL;NULL;04 74 96 01 24;j-p-g-sarl509(a)orange.fr;25504;NULL;
-254153;FX;BIG MAT CHAMIGNON;B;03 LURCY LEVI;NULL;NULL;04 70 67 35 55;NULL;25510;NULL;
-254154;FX;MAUREL AGM;A;83 TOULON;NULL;NULL;0 ;gilbert.maurel(a)live.fr;25529;NULL;
-254155;FX;DERLET;A;57 AUDUN LE T;NULL;NULL;03 82 52 21 50;NULL;25532;NULL;
-254156;FX;MONDIAL STORES;A;38 RUY;NULL;NULL;04 74 93 07 19;NULL;25533;NULL;
-254157;FX;ARTHUS;NULL;92 LEVALLOIS;NULL;NULL;01 47 58 08 76;NULL;25551;NULL;
-254158;FX;DAUPHINE STORES;D;38 ST EGREVE;NULL;NULL;04 76 75 49 17;NULL;25568;NULL;
-254159;FX;RATINEAU;A;87 EYMOUTIERS;NULL;NULL;05 55 69 29 30;NULL;25571;NULL;
-254160;FX;FLAMANT SYLVAIN;D;24 MUSSIDAN;NULL;NULL;05 53 80 16 43;NULL;25572;NULL;
-254161;FX;BATIFINI 303107;A;34 ST AUNES;NULL;NULL;04 67 59 24 78;NULL;25578;NULL;
-254162;FX;CL DIVERS PNE F. CHEVAL;NULL;91 P;NULL;NULL;0 ;NULL;25581;NULL;
-254163;FX;CL DIVERS PNE F. CHEVAL;NULL;91 P;NULL;NULL;0.......;NULL;25581;NULL;
-254164;FX;JEANTO;A;69 LYON;NULL;NULL;04 78 69 86 81;NULL;25585;NULL;
-254165;FX;MELIN CHATILLON SUR INDRE;NULL;36 CHATILLON;NULL;NULL;02 54 38 90 76;NULL;25588;NULL;
-254166;FX;GOULET GERARD;A+;41 NEUNG SUR;NULL;NULL;02 54 83 75 41;NULL;25592;NULL;
-254167;FX;MATERIAUX SERVICE;NULL;77 VARENNES S;NULL;NULL;01 60 73 50 33;NULL;25608;NULL;
-254168;FX;MAYTOP ISO 45;NULL;45 FLEURY LES;NULL;NULL;02 38 83 97 48;NULL;25609;NULL;
-254169;FX;CL DIVERS PNE V. VALOGGIA;A;94 P;NULL;NULL;0 ;NULL;25634;NULL;
-254170;FX;SAEB;A+;03 ABREST;NULL;NULL;04 70 98 50 07;NULL;25637;NULL;
-254171;FX;SAEB;A+;03 ABREST;NULL;NULL;04á70á985007;NULL;25637;NULL;
-254172;FX;COLLIN;A;95 SANNOIS;NULL;NULL;01 34 11 16 85;NULL;25641;NULL;
-254173;FX;EYMARD DANIEL;A;24 CHAMPS ROM;NULL;NULL;05 53 56 84 56;NULL;25642;NULL;
-254174;FX;LA MAISON DU STORE;A;01 MIRIBEL;NULL;NULL;04 72 77 91 75;NULL;25651;NULL;
-254175;FX;STOPSOLAR 4569;NULL;31 TOULOUSE C;NULL;NULL;05 61 76 15 14;NULL;25661;NULL;
-254176;FX;STYL DECOR;A+;26 PIERRELATT;NULL;NULL;09 72 33 29 91;info(a)styl-decor.fr;25666;NULL;
-254177;FX;ALLIER STORES FERMETURES;A+;03 CHARMEIL;NULL;NULL;04 70 32 85 43;NULL;25670;NULL;
-254178;FX;ALLIER STORES FERMETURES;A+;03 CHARMEIL;NULL;NULL;0 ;NULL;25670;NULL;
-254179;FX;ALLIER STORES FERMETURES;A+;03 CHARMEIL;NULL;NULL;0 ;thierry.marolles(a)orange.fr;25670;NULL;
-254180;FX;APB MENUISERIE 5068;A+;55 VASSINCOUR;NULL;NULL;03 29 78 51 11;NULL;25674;NULL;
-254181;FX;SERRE MENUISERIE MIROIT;B;13 VELAUX;NULL;NULL;04 42 87 42 92;NULL;25684;NULL;
-254182;FX;VERALIA;A+;30 MARGUERITE;NULL;NULL;04 66 75 26 40;NULL;25685;NULL;
-254183;FX;LERT MENUISERIE;A+;26 ST RESTITU;NULL;NULL;04 75 04 57 04;NULL;25699;NULL;
-254184;FX;S3M ROBERT;A+;92 MALAKOFF;NULL;NULL;01 42 53 95 08;NULL;25701;NULL;
-254185;FX;MVA;D;35 LE RHEU;NULL;NULL;02 99 14 95 29;NULL;25703;NULL;
-254186;FX;CIVEL ERIC;NULL;44 PREFAILLES;NULL;NULL;02 40 64 51 11;NULL;25706;NULL;
-254187;FX;MEGNIEN BMO CHATELLERAULT;NULL;86 CHATELLERA;NULL;NULL;05 49 21 09 21;NULL;25708;NULL;
-254188;FX;EURO VERRE 4610;NULL;63 MOZAC;NULL;NULL;04 73 74 48 71;NULL;25730;NULL;
-254189;FX;LALLIARD BOIS ET DERIVES;A;74 SAINT PIER;NULL;NULL;04 50 03 87 77;NULL;25737;NULL;
-254190;FX;LAMY DANIEL;A;85 MONTAIGU;NULL;NULL;02 51 94 19 62;NULL;25762;NULL;
-254191;FX;AMS;A+;03 AVERMES;NULL;NULL;04 70 46 75 65;NULL;25763;NULL;
-254192;FX;AMS;A+;03 AVERMES;NULL;NULL;0 ;NULL;25763;NULL;
-254193;FX;AMS;A+;03 AVERMES;NULL;NULL;04 70 46 75 65;cb(a)ams-morette.com;25763;NULL;
-254194;FX;AMS;A+;03 AVERMES;NULL;NULL;0 ;hfrancois(a)ams-morette.com;25763;NULL;
-254195;FX;AMS;A+;03 AVERMES;NULL;NULL;04 70 46 75 65;jm(a)ams-morette.com;25763;NULL;
-254196;FX;AMS;A+;03 AVERMES;NULL;NULL;0 ;NULL;25763;NULL;
-254197;FX;APPIANO J.;A;72 RUAUDIN;NULL;NULL;02 43 75 79 43;appiano(a)wanadoo.fr;25767;NULL;
-254198;FX;ECPM;A+;26 LA ROCHE D;NULL;NULL;04 75 84 76 43;NULL;25768;NULL;
-254199;FX;ADM 4420;NULL;79 ST PARDOUX;NULL;NULL;05 49 63 45 57;NULL;25772;NULL;
-254200;FX;PAVEC CONSTRUCTIONS;A+;29 QUIMPERLE;NULL;NULL;02 98 96 19 83;NULL;25788;NULL;
-254201;FX;DUPRE DANIEL;A;57 METZING;NULL;NULL;0 ;NULL;25789;NULL;
-254202;FX;MORENO MARIANO;A;69 DECINES;NULL;NULL;04 72 02 05 79;NULL;25794;NULL;
-254203;FX;BERGE GILBERT;A;45 FLEURY LES;NULL;NULL;02 38 86 31 98;NULL;25808;NULL;
-254204;FX;COMPTOIR FORESTIER;A;45 MONTARGIS;NULL;NULL;02 38 99 02 25;NULL;25813;NULL;
-254205;FX;COMPTOIR FORESTIER;A;45 MONTARGIS;NULL;NULL;02 38 99 02 25;jpluter(a)comptoirforestier.com;25813;NULL;
-254206;FX;LARMOIRE ERIC;D;14 CROISSANVI;NULL;NULL;02 31 23 82 47;NULL;25814;NULL;
-254207;FX;LAMBERT - TOUT FAIRE;A;72 MAYET;NULL;NULL;02 43 46 05 57;NULL;25824;NULL;
-254208;FX;CHAUVET;B;63 LEZOUX;NULL;NULL;04 73 73 12 48;NULL;25827;NULL;
-254209;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;22 ST BRIEUC;NULL;NULL;02 96 68 22 67;NULL;25830;NULL;
-254210;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;22 ST BRIEUC;NULL;NULL;02 96 33 59 41;NULL;25830;NULL;
-254211;FX;MTM;D;37 MONTS;NULL;NULL;02 47 26 71 84;mtm.vilhem-fouquet(a)wanadoo.fr;25848;NULL;
-254212;FX;OXXO;A;71 CLUNY;NULL;NULL;04 72 52 37 30;NULL;25849;NULL;
-254213;FX;BATI ALU;A+;63 ST BONNET;NULL;NULL;04 73 63 31 39;NULL;25854;NULL;
-254214;FX;BATI ALU;A+;63 ST BONNET;NULL;NULL;04 73 63 31 39;bati.alu(a)wanadoo.fr;25854;NULL;
-254215;FX;M3C COURTOIS 4484;NULL;02 SAINT QUEN;NULL;NULL;03 23 51 06 22;NULL;25856;NULL;
-254216;FX;MONTBOYER METAL;A+;16 MONTBOYER;NULL;NULL;05 45 98 40 32;NULL;25859;NULL;
-254217;FX;PHILIPP FRERES;A+;68 COLMAR;NULL;NULL;03 89 27 46 65;NULL;25877;NULL;
-254218;FX;BOTON REGIS;A;79 MONCOUTANT;NULL;NULL;0 ;NULL;25892;NULL;
-254219;FX;CODI;A;35 RENNES;NULL;NULL;02 99 84 08 12;NULL;25894;NULL;
-254220;FX;LECOMTE HIVET;A;76 ROUEN;NULL;NULL;02 35 72 95 75;NULL;25900;NULL;
-254221;FX;BASCOULERGUE PIERRE;A;18 BOURGES;NULL;NULL;02 48 65 93 15;NULL;25909;NULL;
-254222;FX;ALUMINIUM PYRENEES;A;31 ST ALBAN;NULL;NULL;05 61 09 54 92;NULL;25913;NULL;
-254223;FX;RESEAU PRO CANTRELLE ABBEVILLE;NULL;80 ABBEVILLE;NULL;NULL;03 22 20 79 78;NULL;25915;NULL;
-254224;FX;BRIARD JC SOCIETE;D;95 Ermont;NULL;NULL;01 60 60 87 50;NULL;25920;NULL;
-254225;FX;BRIARD JC SOCIETE;D;95 Ermont;NULL;NULL;01 39 95 74 47;NULL;25920;NULL;
-254226;FX;CBC;NULL;83 TOULON CED;NULL;NULL;04 94 08 83 84;NULL;25928;NULL;
-254227;FX;AIME FORMOSA;A;13 MARSEILLE;NULL;NULL;04 91 95 94 73;NULL;25931;NULL;
-254228;FX;NORMANDIE BAIE 4217;NULL;14 IFS;NULL;NULL;02 31 52 20 52;NULL;25938;NULL;
-254229;FX;STRUCTURES ESPACE LUMIERE;A+;13 MIMET;NULL;NULL;04 42 51 47 73;NULL;25954;NULL;
-254230;FX;POINT P COMAT MONTENDRE;A;17 MONTENDRE;NULL;NULL;05 46 49 23 58;NULL;25957;NULL;
-254231;FX;BONGIOVANNI CHARLES;A;13 MARSEILLE;NULL;NULL;04 91 50 56 71;NULL;25963;NULL;
-254232;FX;AP2R (AGENCEMENT PEINTURE;A+;91 SAVIGNY SU;NULL;NULL;01 69 05 55 41;NULL;25976;NULL;
-254233;FX;SAVARY STORES ET BACHES SARL;B;CH 1026 ECHAN;NULL;NULL;412 17 02 27 95;savarystores(a)urbanet.ch;25986;NULL;
-254234;FX;SFP STE FRANCAISE DE PLAFOND;A;94 MANDRES LE;NULL;NULL;01 58 08 60 15;NULL;26025;NULL;
-254235;FX;VIBRAMENAL;NULL;72 VIBRAYE;NULL;NULL;02 43 93 62 14;NULL;26034;NULL;
-254236;FX;GEDIMAT LDP CHENEL MATERI;A;76 LE HAVRE;NULL;NULL;02 35 24 17 80;NULL;26037;NULL;
-254237;FX;LE DORE BOIS ET MATERIAUX;D;56 AURAY CEDE;NULL;NULL;02 97 24 22 58;NULL;26038;NULL;
-254238;FX;MENUISERIE COURCELLES PITOIS;A;45 MARDIE;NULL;NULL;02 38 91 14 73;NULL;26049;NULL;
-254239;FX;MENUBOIS;A+;42 MABLY;NULL;NULL;04 77 70 89 34;NULL;26050;NULL;
-254240;FX;MENUBOIS;A+;42 MABLY;NULL;NULL;0 ;NULL;26050;NULL;
-254241;FX;SUREAU JEAN;A;37 STE MAURE;NULL;NULL;02 47 65 51 31;NULL;26053;NULL;
-254242;FX;EQUIP NORD 4570;NULL;59 DOUAI;NULL;NULL;03 20 88 28 63;NULL;26056;NULL;
-254243;FX;FERMOBAT SUD 4382;NULL;83 LA CADIERE;NULL;NULL;04 94 98 24 55;NULL;26063;NULL;
-254244;FX;BARTHE CHRISTIAN;A;47 NERAC;NULL;NULL;05 53 65 60 10;NULL;26069;NULL;
-254245;FX;DAUPHIN 302849;NULL;93 BONDY;NULL;NULL;01 48 50 73 01;NULL;26071;NULL;
-254246;FX;ABPSI;D;94 VARENNE SA;NULL;NULL;01 48 83 39 54;NULL;26076;NULL;
-254247;FX;MOYNET ALU;A+;79 CHAURAY;NULL;NULL;05 49 76 10 32;NULL;26087;NULL;
-254248;FX;DANE DISTRIBUTION INDUSTRIELLE;A;65 ALLIER;NULL;NULL;05 62 45 98 99;NULL;26094;NULL;
-254249;FX;ATULAM AGENCE LIMOGES;A;23 JARNAGES;NULL;NULL;05 55 33 62 90;NULL;26095;NULL;
-254250;FX;ATULAM AGENCE LIMOGES;A;23 JARNAGES;NULL;NULL;05 55 80 90 59;NULL;26095;NULL;
-254251;FX;STORES ET LOISIRS;A;69 VILLEFRANC;NULL;NULL;04 74 62 28 75;NULL;26099;NULL;
-254252;FX;PROMETAL;B;63 AMBERT;NULL;NULL;04 73 82 49 10;NULL;26100;NULL;
-254253;FX;AGAESSE MICHEL;B;35 LE RHEU;NULL;NULL;02 99 14 74 60;NULL;26101;NULL;
-254254;FX;TMV;A;38 ST EGREVE;NULL;NULL;04 76 75 82 41;NULL;26102;NULL;
-254255;FX;MIROIT. DES CHARENTES RJ;NULL;17 SAINTES;NULL;NULL;05 46 97 21 06;NULL;26103;NULL;
-254256;FX;VBF M.BISTORIN FRANCIS;A;37 ST CYR SUR;NULL;NULL;0 ;francis.bistorin(a)sfr.fr;26109;NULL;
-254257;FX;SCIERIE BOUTOLLEAU;A;85 BEAUVOIR S;NULL;NULL;02 51 49 39 79;NULL;26113;NULL;
-254258;FX;DA COSTA JOSE;A;91 BOUTIGNY S;NULL;NULL;01 64 57 84 39;NULL;26118;NULL;
-254259;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;02 43 29 16 02;j-michel(a)alubarbier.com;26123;NULL;
-254260;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;02 43 29 16 02;metreur(a)alubarbier.com;26123;NULL;
-254261;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;02 43 29 16 02;alu.barbier(a)wanadoo.fr;26123;NULL;
-254262;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;0 ;NULL;26123;NULL;
-254263;FX;LYON FENETRES;D;69 ST PRIEST;NULL;NULL;04 78 90 67 84;lyon.fenetres(a)wanadoo.fr;26129;NULL;
-254264;FX;LYON FENETRES;D;69 ST PRIEST;NULL;NULL;04 78 90 67 84;NULL;26129;NULL;
-254265;FX;MERCIER DAVID;A;88 SAINTE MAR;NULL;NULL;03 29 55 12 11;NULL;26130;NULL;
-254266;FX;ROUSSELOT LIONEL;A;77 CHEVRY COS;NULL;NULL;01 64 05 12 36;NULL;26132;NULL;
-254267;FX;POUILLARD ET FILS 999999;NULL;91 MONTGERON;NULL;NULL;01 64 08 53 14;NULL;26136;NULL;
-254268;FX;POUILLARD ET FILS 999999;NULL;91 MONTGERON;NULL;NULL;01 69 03 66 33;NULL;26136;NULL;
-254269;FX;DEL BIANCO PAOLO;A;16 COGNAC;NULL;NULL;05 45 32 38 36;NULL;26137;NULL;
-254270;FX;MIROITERIE AVIGLASS;A;84 LE PONTET;NULL;NULL;04 90 32 32 61;NULL;26145;NULL;
-254271;FX;GROLLA VERRES;A+;73 MODANE;NULL;NULL;04 79 05 13 07;NULL;26147;NULL;
-254272;FX;LABASTERE SAS;A;64 BAYONNE;NULL;NULL;05 59 50 60 11;NULL;26148;NULL;
-254273;FX;LABASTERE SAS;A;64 BAYONNE;NULL;NULL;05 59 50 60 24;NULL;26148;NULL;
-254274;FX;LABASTERE SAS;A;64 BAYONNE;NULL;NULL;05 59 55 00 45;NULL;26148;NULL;
-254275;FX;BIG MAT PAULIN;A;43 LANGEAC;NULL;NULL;04 71 02 06 76;NULL;26156;NULL;
-254276;FX;CDM BUCHERES;D;10 BUCHERES;NULL;NULL;03 25 71 20 61;NULL;26170;NULL;
-254277;FX;ARAS UVIR;NULL;69 LES CHERES;NULL;NULL;04 78 47 06 04;NULL;26171;NULL;
-254278;FX;MENTOR SOCIETE NOUVELLE;A+;83 TOULON;NULL;NULL;04 94 61 70 93;NULL;26177;NULL;
-254279;FX;CHARRIER;B;91 QUINCY S/S;NULL;NULL;01 69 39 06 57;NULL;26180;NULL;
-254280;FX;GEDIMAT SEFOR HOUILLES;A;78 HOUILLES;NULL;NULL;01 39 57 10 11;NULL;26183;NULL;
-254281;FX;AFC - AUTOMAT.FERMET.CONCEPT;D;14 BRETTEVILL;NULL;NULL;02 31 26 22 45;NULL;26184;NULL;
-254282;FX;POIROT;A;26 CLAVEYSON;NULL;NULL;04 75 68 89 25;NULL;26191;NULL;
-254283;FX;ALU BOIS CONCEPT 4899;A+;83 ROQUEBRUNE;NULL;NULL;04 94 44 05 63;NULL;26192;NULL;
-254284;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;appro(a)ecodis.fr;26200;NULL;
-254285;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;03 88 48 16 92;l.schott(a)ecodis.fr;26200;NULL;
-254286;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;j.dasilva(a)ecodis.fr;26200;NULL;
-254287;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;e.tatangelo(a)ecodis.fr;26200;NULL;
-254288;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;s.baillet(a)ecodis.fr;26200;NULL;
-254289;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 16;n.vacle(a)ecodis.fr;26200;NULL;
-254290;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;0 ;appro(a)ecodis.fr;26200;NULL;
-254291;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;0 ;fx.moreau(a)ecodis.fr;26200;NULL;
-254292;FX;MV FERMETURES 4849;NULL;93 EPINAY SUR;NULL;NULL;01 48 41 36 70;NULL;26208;NULL;
-254293;FX;PINSON JEAN MICHEL;A;45 CHUELLES;NULL;NULL;02 38 96 61 47;NULL;26212;NULL;
-254294;FX;OMNES BERNARD;A;45 CHAINGY;NULL;NULL;02 38 88 80 48;NULL;26216;NULL;
-254295;FX;CHALUMEAU MENUISERIE 302838;A;61 SAINT GERM;NULL;NULL;02 33 32 26 82;NULL;26218;NULL;
-254296;FX;CROS STORES ET FERMETURES;A;31 TOULOUSE;NULL;NULL;05 61 48 30 00;NULL;26225;NULL;
-254297;FX;GENIES;D;89 MONETEAU;NULL;NULL;03 86 42 74 73;NULL;26227;NULL;
-254298;FX;BRIAND;A;35 BEDEE;NULL;NULL;02 99 07 11 63;NULL;26243;NULL;
-254299;FX;GSB;A;35 ST GILLES;NULL;NULL;02 99 64 83 73;NULL;26251;NULL;
-254300;FX;COLOMAT;A;86 LOUDUN;NULL;NULL;05 49 98 56 29;NULL;26265;NULL;
-254301;FX;FRABOULET SARL;A+;22 TREVE;NULL;NULL;02 96 28 63 58;NULL;26280;NULL;
-254302;FX;SLC ALUFER;A;44 PORNIC;NULL;NULL;02 40 82 68 84;NULL;26285;NULL;
-254303;FX;LEBRETON MICHEL;A;49 LE LOUROUX;NULL;NULL;02 41 77 48 31;NULL;26288;NULL;
-254304;FX;BOUAISSIER PATRICE;A;35 SAINT AUBI;NULL;NULL;02 99 55 50 01;NULL;26291;NULL;
-254305;FX;ALUMINIUM CONFORT SYSTEMS;A;92 ANTONY;NULL;NULL;01 40 96 86 86;NULL;26293;NULL;
-254306;FX;GEDIMAT DATAS;A;32 SEISSAN;NULL;NULL;05 62 86 25 40;NULL;26295;NULL;
-254307;FX;RIBEAUD;A+;38 CHARAVINES;NULL;NULL;04 76 55 60 80;ribeaud.menuiserie(a)wanadoo.fr;26298;NULL;
-254308;FX;RIBEAUD;A+;38 CHARAVINES;NULL;NULL;04 76 55 60 80;NULL;26298;NULL;
-254309;FX;STORES SUD SERVICES 3S 4262;NULL;20 MEZZAVIA;NULL;NULL;04 95 10 62 60;NULL;26299;NULL;
-254310;FX;CHANTELAUZE PHILIPPE;D;63 LA FORIE;NULL;NULL;04 73 82 18 29;NULL;26303;NULL;
-254311;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;mauvertex.brigitte(a)wanadoo.fr;26304;NULL;
-254312;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;NULL;26304;NULL;
-254313;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;0 ;mauvertex.christophe(a)orange.fr;26304;NULL;
-254314;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;mauvertex.nicole(a)wanadoo.fr;26304;NULL;
-254315;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;0 ;mauvertex.paule(a)wanadoo.fr;26304;NULL;
-254316;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;0 ;mauvertex.frederic(a)wanadoo.fr;26304;NULL;
-254317;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;mauvertex.thomas(a)wanadoo.fr;26304;NULL;
-254318;FX;PAGOT SAVOIE MATERIAUX;A;39 Salins-les;NULL;NULL;03 25 32 02 08;NULL;26309;NULL;
-254319;FX;PAGOT SAVOIE MATERIAUX;A;39 Salins-les;NULL;NULL;03 84 33 47 51;morbier(a)pagot-savoie.fr;26309;NULL;
-254320;FX;PAGOT SAVOIE MATERIAUX;A;39 Salins-les;NULL;NULL;03 84 71 87 02;NULL;26309;NULL;
-254321;FX;VMA (VITRERIE MIROITERIE;A+;74 CRANVES SA;NULL;NULL;04 50 36 76 32;NULL;26318;NULL;
-254322;FX;CALIFORNIA STORES 302864;NULL;CH 1024 ECUBL;NULL;NULL;412 16 91 54 15;NULL;26321;NULL;
-254323;FX;CALIFORNIA STORES 302864;NULL;CH 1024 ECUBL;NULL;NULL;02 16 91 54 15;NULL;26321;NULL;
-254324;FX;PERRET;D;69 CHASSIEU;NULL;NULL;04 72 13 35 25;NULL;26326;NULL;
-254325;FX;PERRET;D;69 CHASSIEU;NULL;NULL;04 72 13 35 25;eric(a)passionbois.com;26326;NULL;
-254326;FX;GILBERT DIDIER;A;45 SAINT JEAN;NULL;NULL;02 38 75 08 45;NULL;26335;NULL;
-254327;FX;METALAG 5051;A+;72 LOUE;NULL;NULL;02 43 88 62 00;NULL;26337;NULL;
-254328;FX;INVERSIONES MARTINICA SA;NULL;CO I;NULL;NULL;0 ;NULL;26339;NULL;
-254329;FX;EMG STORES;A+;68 HESINGUE;NULL;NULL;03 89 69 57 00;ferraro-marcello(a)hotmail.fr;26343;NULL;
-254330;FX;EMG STORES;A+;68 HESINGUE;NULL;NULL;03 89 69 57 00;NULL;26343;NULL;
-254331;FX;EMG STORES;A+;68 HESINGUE;NULL;NULL;03 89 69 57 00;stores.emg2(a)wanadoo.fr;26343;NULL;
-254332;FX;LALANDE LIONEL - DIS.PRO.BAT;A+;70 RIOZ;NULL;NULL;03 84 91 73 43;NULL;26344;NULL;
-254333;FX;ARCARENOV;A+;93 NOISY LE S;NULL;NULL;01 48 10 97 62;NULL;26349;NULL;
-254334;FX;KREMBEL RAYMOND;A;68 DANNEMARIE;NULL;NULL;03 89 25 17 29;NULL;26354;NULL;
-254335;FX;EGELIS;A;93 BAGNOLET;NULL;NULL;01 43 02 05 80;NULL;26357;NULL;
-254336;FX;SAINT AMAND MATERIAUX GEDIMAT;NULL;18 SAINT AMAN;NULL;NULL;02 48 96 14 07;NULL;26359;NULL;
-254337;FX;POL AGRET;A;63 CLERMONT F;NULL;NULL;04 73 90 92 79;NULL;26363;NULL;
-254338;FX;ALPHA ALUMINIUM;A;13 MARSEILLE;NULL;NULL;04 91 70 94 14;NULL;26367;NULL;
-254339;FX;ARZEL;A;02 CHATEAU TH;NULL;NULL;03 23 83 01 00;NULL;26377;NULL;
-254340;FX;ARZEL;A;02 CHATEAU TH;NULL;NULL;03 23 83 01 00;arzel(a)arzel.fr;26377;NULL;
-254341;FX;THEVENET JEAN;B;38 ST CLAIR D;NULL;NULL;04 74 97 15 15;NULL;26380;NULL;
-254342;FX;FERMETURES MORATIN;A+;93 ROMAINVILL;NULL;NULL;01 48 45 70 81;NULL;26385;NULL;
-254343;FX;CHARDON PATRICK;A;18 BOURGES;NULL;NULL;02 48 25 95 54;NULL;26388;NULL;
-254344;FX;POULIN PATRICE;A;45 SARAN;NULL;NULL;02 38 65 93 94;NULL;26391;NULL;
-254345;FX;COGECEM SAS;A;45 ST JEAN DE;NULL;NULL;02 38 88 77 06;NULL;26394;NULL;
-254346;FX;POINT P BMSO PERIGUEUX;A+;24 PERIGUEUX;NULL;NULL;05 53 54 69 18;NULL;26401;NULL;
-254347;FX;INTER STORE;A+;68 HABSHEIM;NULL;NULL;03 89 31 86 49;NULL;26404;NULL;
-254348;FX;BACHIMONT;A;28 TOURY;NULL;NULL;02 37 90 55 90;NULL;26409;NULL;
-254349;FX;HARMONIE DECOR STE NELLE;B;73 CHALLES LE;NULL;NULL;04 79 72 76 36;NULL;26414;NULL;
-254350;FX;BORELLA VOGUE DECORATION;B;CH 1207 GENEV;NULL;NULL;412 27 00 16 75;borellavoguedeco(a)bluewin.ch;26415;NULL;
-254351;FX;PHILIPPI CAB;A+;67 OBERNAI;NULL;NULL;03 88 95 06 65;NULL;26417;NULL;
-254352;FX;DELAHAYES JEAN PAUL;A+;35 BECHEREL;NULL;NULL;02 99 66 77 98;NULL;26423;NULL;
-254353;FX;PERRAUD ANCIENS ETS.;A;44 BOUGUENAIS;NULL;NULL;02 51 70 64 65;ae.perraud(a)wanadoo.fr;26426;NULL;
-254354;FX;FRANCHET (STE NOUVELLE) 5049;A+;37 CHAMBRAY L;NULL;NULL;0 ;NULL;26429;NULL;
-254355;FX;RENOV BAIE (BAIE RENOVEES 4581;NULL;92 LEVALLOIS;NULL;NULL;01 47 57 80 65;NULL;26431;NULL;
-254356;FX;AMA ATELIER;A;41 ROMORANTIN;NULL;NULL;02 54 76 50 07;NULL;26432;NULL;
-254357;FX;HEURTEBIZE ETS LA ROCHE STORE;A+;16 LA ROCHEFO;NULL;NULL;05 45 62 15 19;NULL;26433;NULL;
-254358;FX;PREVOT SAS;A;24 BERGERAC;NULL;NULL;05 53 57 65 02;NULL;26448;NULL;
-254359;FX;GUILLEMOT MENUISERIE;B;89 CHEMILLY S;NULL;NULL;03 86 40 11 20;NULL;26454;NULL;
-254360;FX;GEDIMAT TERRAL;A;81 LACAUNE;NULL;NULL;05 63 37 11 10;NULL;26455;NULL;
-254361;FX;CUBIZOLLES;A;15 MASSIAC;NULL;NULL;04 71 23 04 25;NULL;26458;NULL;
-254362;FX;NICOLAU FRERES;A;66 BANUYLS SU;NULL;NULL;04 68 88 19 92;NULL;26462;NULL;
-254363;FX;DURIEUX 4332;NULL;92 CHATENAY M;NULL;NULL;01 46 32 97 71;NULL;26464;NULL;
-254364;FX;RASPAUD XAVIER - REV STORES;A+;38 VEYSSILIEU;NULL;NULL;0 ;xavier.raspaud(a)wanadoo.fr;26466;NULL;
-254365;FX;CAMPS 4760;A;64 COARRAZE;NULL;NULL;05 59 61 24 88;NULL;26475;NULL;
-254366;FX;BRENNER-LOEGEL CLAUDE;A;14 MAIZIERES;NULL;NULL;02 31 90 08 01;NULL;26479;NULL;
-254367;FX;CROSET HERVE;B;74 ANNECY LE;NULL;NULL;04 50 23 63 98;NULL;26488;NULL;
-254368;FX;BOUSQUET;A;34 LA GRANDE;NULL;NULL;04 67 56 37 80;NULL;26491;NULL;
-254369;FX;RENOV'HABITAT;NULL;50 LA HAYE DU;NULL;NULL;02 33 45 60 05;NULL;26498;NULL;
-254370;FX;LYON SOLS - M. COUSSEIROUX;A;69 LYON;NULL;NULL;04 78 29 06 24;NULL;26512;NULL;
-254371;FX;APE ENSEIGNES;A;42 BONSON;NULL;NULL;04 77 41 06 01;NULL;26522;NULL;
-254372;FX;NORD MENUISERIE DIFFUSION;NULL;59 FEIGNIES;NULL;NULL;03 27 62 54 35;NULL;26528;NULL;
-254373;FX;ATELIER DE METALLERIE;A;92 VANVES CED;NULL;NULL;01 46 44 16 50;NULL;26543;NULL;
-254374;FX;MONTEIL BRUNO;D;86 ST GERVAIS;NULL;NULL;05 49 23 18 65;NULL;26546;NULL;
-254375;FX;AGEMA;A;41 BLOIS;NULL;NULL;02 54 74 85 26;NULL;26549;NULL;
-254376;FX;INDIGO;A+;94 ST MAUR DE;NULL;NULL;01 45 11 89 48;NULL;26551;NULL;
-254377;FX;MASSON AGENCEMENT;A;42 SAINT CHAM;NULL;NULL;04 77 31 47 13;NULL;26555;NULL;
-254378;FX;WOLSELEY RESEAU PRO THOUARS;NULL;79 THOUARS;NULL;NULL;0 ;NULL;26565;NULL;
-254379;FX;BLANCHET BRUNO;A;87 LE DORAT;NULL;NULL;05 55 60 74 91;NULL;26573;NULL;
-254380;FX;CPAB - CENTRE PROTECTION;A;42 ST ETIENNE;NULL;NULL;04 77 47 11 84;cpabjpm(a)cegetel.net;26578;NULL;
-254381;FX;DEBOUT RICHARD;NULL;45 SARAN;NULL;NULL;02 38 73 61 92;NULL;26581;NULL;
-254382;FX;TFB 2000 - TOUTES;A;38 ECHIROLLES;NULL;NULL;04 76 25 89 42;NULL;26582;NULL;
-254383;FX;VOILUX RJ;NULL;94 SAINT MAND;NULL;NULL;01 43 74 09 64;NULL;26585;NULL;
-254384;FX;S2S STORE SIGNALETIQUE SERVICE;D;94 ST MAUR DE;NULL;NULL;01 48 89 32 95;NULL;26595;NULL;
-254385;FX;ROQ'ALU;B;34 ROUJAN;NULL;NULL;04 67 38 19 37;NULL;26598;NULL;
-254386;FX;ABCS;A;94 ALFORTVILL;NULL;NULL;01 48 99 61 00;NULL;26621;NULL;
-254387;FX;ATP 77 - APPLICATION;A;77 VILLEMAREC;NULL;NULL;01 60 96 59 95;NULL;26622;NULL;
-254388;FX;LPI;A;69 SAINT PRIE;NULL;NULL;04 78 21 76 42;NULL;26628;NULL;
-254389;FX;LPI;A;69 SAINT PRIE;NULL;NULL;04 50 51 34 08;NULL;26628;NULL;
-254390;FX;JAN DIDIER;A;56 VANNES;NULL;NULL;02 97 40 93 07;NULL;26632;NULL;
-254391;FX;ELECT FERMETURES;A;94 LE PLESSIS;NULL;NULL;01 64 61 05 72;NULL;26636;NULL;
-254392;FX;ELECT FERMETURES;A;94 LE PLESSIS;NULL;NULL;01 45 76 19 40;NULL;26636;NULL;
-254393;FX;BERTAUD SYLVAIN ENTREPRISE SAR;A;86 ITEUIL;NULL;NULL;05 49 52 85 47;NULL;26642;NULL;
-254394;FX;ERTON - EURL SOFATIS;B;22 PERROS GUI;NULL;NULL;02 96 91 23 90;NULL;26643;NULL;
-254395;FX;MATERIAUX CLAMECYCOIS;A;58 CLAMECY;NULL;NULL;03 86 27 02 44;NULL;26646;NULL;
-254396;FX;VITRERIE SAVOYARDE;A+;74 SEYNOD;NULL;NULL;04 50 52 17 77;NULL;26648;NULL;
-254397;FX;ACB AGENCE COMMERCIALE BATIMEN;B;07 ANNONAY;NULL;NULL;04 75 67 90 82;NULL;26651;NULL;
-254398;FX;CORS AMENAGEMENT;B;20 BIGUGLIA;NULL;NULL;04 95 31 30 30;marie(a)buro2b.net;26657;NULL;
-254399;FX;CORS AMENAGEMENT;B;20 BIGUGLIA;NULL;NULL;04 95 31 30 30;buro2b(a)buro2b.net;26657;NULL;
-254400;FX;THERMADOME;A;03 CREUZIER L;NULL;NULL;04 70 97 05 12;NULL;26658;NULL;
-254401;FX;THERMADOME;A;03 CREUZIER L;NULL;NULL;04 70 59 63 75;NULL;26658;NULL;
-254402;FX;BLEVIN YVON;A;22 PLENEUF VA;NULL;NULL;0 ;blevin.yvon(a)orange.fr;26659;NULL;
-254403;FX;ESPACE ALUMINIUM;B;97 KOUROU;NULL;NULL;05 94 32 62 86;NULL;26662;NULL;
-254404;FX;ESPACE ALUMINIUM;B;97 KOUROU;NULL;NULL;05 94 32 62 86;espace-alu(a)wanadoo.fr;26662;NULL;
-254405;FX;VERALUTEC;A;47 FRANCESCAS;NULL;NULL;05 62 68 47 87;NULL;26666;NULL;
-254406;FX;CL DIVERS DG;NULL;45 CHECY;NULL;NULL;0 ;NULL;26670;NULL;
-254407;FX;LANFRANCHI - DECOSTORE;A;78 VELIZY;NULL;NULL;01 30 70 80 71;NULL;26673;NULL;
-254408;FX;SINFAL;NULL;74 EVIAN;NULL;NULL;0 ;NULL;26675;NULL;
-254409;FX;GEDIMAT HOCHET VALOGNES;A;50 EQUEURDREV;NULL;NULL;02 33 21 66 60;NULL;26681;NULL;
-254410;FX;POINT P BMSO;A;17 ROCHEFORT;NULL;NULL;05 46 87 10 39;NULL;26685;NULL;
-254411;FX;SAMMOB BATIMENT INDUSTRIE;NULL;93 NOISY LE G;NULL;NULL;01 43 05 67 96;NULL;26702;NULL;
-254412;FX;L ESPACE DU VERRE;A;06 NICE;NULL;NULL;04 93 55 97 50;NULL;26706;NULL;
-254413;FX;ABER CONFORT 4452;NULL;10 STE SAVINE;NULL;NULL;03 25 78 37 37;NULL;26728;NULL;
-254414;FX;LAPOUJADE BERNARD;A;47 ESTILLAC;NULL;NULL;05 53 87 60 15;NULL;26729;NULL;
-254415;FX;MEUBLES 3A;D;74 SALLANCHES;NULL;NULL;04 50 93 75 74;NULL;26744;NULL;
-254416;FX;MENUISERIE LENOBLE;A+;73 ALBERTVILL;NULL;NULL;04 79 37 70 12;NULL;26763;NULL;
-254417;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;35 VEZIN LE C;NULL;NULL;02 99 14 54 74;NULL;26767;NULL;
-254418;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;35 VEZIN LE C;NULL;NULL;02 99 14 60 91;NULL;26767;NULL;
-254419;FX;EPS (ENTREPRISE PARISIEN-;A;95 EAUBONNE;NULL;NULL;01 39 59 86 10;NULL;26772;NULL;
-254420;FX;CHEF CHRISTOPHE;A;02 LAON;NULL;NULL;03 23 79 67 46;NULL;26779;NULL;
-254421;FX;CHAZELLE;A;42 ST ETIENNE;NULL;NULL;04 77 32 53 10;NULL;26786;NULL;
-254422;FX;UNAFERM;A;68 ASPACH;NULL;NULL;03 89 40 99 44;NULL;26790;NULL;
-254423;FX;REUTTER FERMETURES;A;68 WITTENHEIM;NULL;NULL;03 89 53 72 98;NULL;26791;NULL;
-254424;FX;CHERRIER ALAIN 4171;NULL;37 JOUE LES T;NULL;NULL;02 47 67 58 59;NULL;26794;NULL;
-254425;FX;TROUILLARD POINT P PDL OLONNE SUR MER;A;85 OLONNE SUR;NULL;NULL;02 51 32 86 05;NULL;26798;NULL;
-254426;FX;FIGIEL XAVIER;NULL;59 LE CATEAU;NULL;NULL;03 27 77 98 03;NULL;26802;NULL;
-254427;FX;MENUISERIE JAY;B;73 COGNIN;NULL;NULL;04 79 69 01 42;NULL;26807;NULL;
-254428;FX;FAUCHER ANDRE;D;63 BESSE ET S;NULL;NULL;04 73 79 57 33;NULL;26815;NULL;
-254429;FX;ATELIER DU STORE 4677;NULL;94 SAINT MAUR;NULL;NULL;01 48 89 16 92;NULL;26816;NULL;
-254430;FX;FERDALU;A;13 MARSEILLE;NULL;NULL;04 91 58 65 53;NULL;26820;NULL;
-254431;FX;FERDALU;A;13 MARSEILLE;NULL;NULL;04 91 58 65 53;ferdalu(a)wanadoo.fr;26820;NULL;
-254432;FX;ANJOU CONFORT 4919;A+;49 ST MARTIN;NULL;NULL;02 41 39 58 01;NULL;26822;NULL;
-254433;FX;SODAI;A;69 BRON CEDEX;NULL;NULL;04 78 26 85 60;NULL;26825;NULL;
-254434;FX;MIROITERIE AVALLONNAISE;A;89 MAGNY;NULL;NULL;03 86 33 19 91;NULL;26826;NULL;
-254435;FX;MIROITERIE AVALLONNAISE;A;89 MAGNY;NULL;NULL;03 86 33 06 09;NULL;26826;NULL;
-254436;FX;REYNAUD CAUVIN YVOSE;A+;71 LOUHANS;NULL;NULL;03 85 75 47 39;NULL;26829;NULL;
-254437;FX;COMPTOIR DES MATERIAUX;NULL;27 BRIONNE;NULL;NULL;02 32 44 09 73;NULL;26832;NULL;
-254438;FX;MIROITERIE BERTRAND;A+;65 LOURDES;NULL;NULL;05 62 94 57 90;NULL;26839;NULL;
-254439;FX;MIROITERIE BERTRAND;A+;65 LOURDES;NULL;NULL;05 62 94 57 90;miroiterie(a)miroiterie-bertrand.com;26839;NULL;
-254440;FX;POLYCLOSE HABIMAT;A+;62 Annequin;NULL;NULL;03 21 64 94 45;NULL;26841;NULL;
-254441;FX;MUNCH;A+;68 GUEWENHEIM;NULL;NULL;03 89 82 88 89;NULL;26849;NULL;
-254442;FX;ROSFELDER;D;67 VALFF;NULL;NULL;03 88 08 40 04;NULL;26853;NULL;
-254443;FX;EPL - ELECTRICITE PLAFOND;A;93 LE BOURGET;NULL;NULL;01 48 36 34 34;NULL;26854;NULL;
-254444;FX;FERMETURES MICHEL SIMON;A;77 CHELLES;NULL;NULL;01 64 72 98 93;NULL;26855;NULL;
-254445;FX;LENUD JEAN MARIE;B;27 FLEURY SUR;NULL;NULL;02 32 49 59 28;NULL;26863;NULL;
-254446;FX;AMF ATELIER METALLIQUE;A;93 AUBERVILLI;NULL;NULL;01 48 34 43 64;NULL;26869;NULL;
-254447;FX;CLESTRA HAUSERMANN;A;92 MALAKOFF;NULL;NULL;03 88 28 12 28;NULL;26872;NULL;
-254448;FX;HALLES DECO;B;CM ALA;NULL;NULL;23 73 43 22 98;hallesdeco(a)yahoo.fr;26882;NULL;
-254449;FX;HALLES DECO;B;CM ALA;NULL;NULL;0 ;NULL;26882;NULL;
-254450;FX;LEPINAY PIERRE;A;35 POLIGNE;NULL;NULL;02 99 43 94 61;NULL;26884;NULL;
-254451;FX;MVN - MIROITERIE VITRERIE;B;28 NOGENT LE;NULL;NULL;02 37 52 11 09;NULL;26907;NULL;
-254452;FX;BARBIER PASCAL EURL;B;58 RAVEAU;NULL;NULL;03 86 70 27 52;NULL;26908;NULL;
-254453;FX;MIROITERIE JAMOS;A;42 ST JEAN BO;NULL;NULL;04 77 33 86 78;NULL;26913;NULL;
-254454;FX;LE NAIR PIERRE;D;35 MEILLAC;NULL;NULL;02 99 73 31 64;pierre.le.nair(a)wanadoo.fr;26919;NULL;
-254455;FX;POINT P BRETAGNE PAIMPOL;A;22 PAIMPOL;NULL;NULL;02 96 22 09 13;NULL;26921;NULL;
-254456;FX;ISOLSTORES;A;18 BOURGES;NULL;NULL;02 48 67 93 83;NULL;26937;NULL;
-254457;FX;CL DIVERS SUD OUEST P.HAUCHECO;NULL;45 ORLEANS;NULL;NULL;02 99 14 86 39;NULL;26946;NULL;
-254458;FX;WEISZ;A+;92 FONTENAY A;NULL;NULL;01 47 02 04 55;NULL;26949;NULL;
-254459;FX;WEISZ;A+;92 FONTENAY A;NULL;NULL;01 47 02 04 55;e.gyalay(a)weisz.fr;26949;NULL;
-254460;FX;STORALIL;B;59 LA MADELEI;NULL;NULL;03 20 06 35 38;NULL;26954;NULL;
-254461;FX;SERRURERIE ALLAIN;A;44 NANTES;NULL;NULL;02 51 13 66 14;NULL;26958;NULL;
-254462;FX;MODULES ENSEIGNES;D;35 BREAL SOUS;NULL;NULL;02 99 60 03 48;NULL;26964;NULL;
-254463;FX;ASTEL MENUISERIE;A;10 MARIGNY LE;NULL;NULL;03 25 21 80 81;NULL;26966;NULL;
-254464;FX;DETOURBET 5103;A;52 VOISINES;NULL;NULL;03 25 87 10 33;sasdetourbet(a)wanadoo.fr;26970;NULL;
-254465;FX;DETOURBET 5103;A;52 VOISINES;NULL;NULL;03 25 87 10 33;NULL;26970;NULL;
-254466;FX;SCAN;A;31 BLAGNAC;NULL;NULL;05 61 15 61 02;NULL;26979;NULL;
-254467;FX;ARTIS ARTIS;D;75 PARIS;NULL;NULL;01 43 56 21 81;NULL;26983;NULL;
-254468;FX;ACTI VITRERIE SERRURERIE;A;78 POISSY;NULL;NULL;01 30 74 73 02;NULL;26987;NULL;
-254469;FX;CHAUSSON TRIALIS BOLLENE;NULL;84 VALREAS CE;NULL;NULL;04 90 30 46 24;NULL;26989;NULL;
-254470;FX;DECORATION LITT;NULL;67 GRIESHEIM;NULL;NULL;03 88 08 42 53;NULL;26991;NULL;
-254471;FX;COMASUD ST RAPHAEL;A+;83 BRIGNOLES;NULL;NULL;04 94 82 25 42;NULL;27004;NULL;
-254472;FX;COMASUD GIGNAC;A+;83 BRIGNOLES;NULL;NULL;04 42 31 47 62;NULL;27018;NULL;
-254473;FX;HORIZON OUEST;NULL;29 BREST;NULL;NULL;02 98 43 80 73;NULL;27020;NULL;
-254474;FX;LE MIROIR DU PAVIN;A+;63 BESSE ET S;NULL;NULL;04 73 79 65 48;NULL;27023;NULL;
-254475;FX;AREHAL;A;95 SANNOIS;NULL;NULL;01 39 80 69 43;NULL;27026;NULL;
-254476;FX;LEBLANC ENTREPRISE 5055;A+;53 ERNEE;NULL;NULL;02 43 05 96 32;NULL;27028;NULL;
-254477;FX;LEBLANC ENTREPRISE 5055;A+;53 ERNEE;NULL;NULL;02 43 05 72 52;NULL;27028;NULL;
-254478;FX;VACHER FILS;A+;41 ROMORANTIN;NULL;NULL;02 54 76 51 01;NULL;27029;NULL;
-254479;FX;MERLE;D;24 TERRASSON;NULL;NULL;05 53 51 15 21;NULL;27030;NULL;
-254480;FX;ETABLISSEMENTS CANAC BOURCIER;A+;48 Mende;NULL;NULL;04 66 47 35 04;NULL;27035;NULL;
-254481;FX;ETABLISSEMENTS CANAC BOURCIER;A+;48 Mende;NULL;NULL;04 66 47 35 04;sarlcanac-bourcier(a)orange.fr;27035;NULL;
-254482;FX;LOUISIANE;NULL;22 LOUDEAC;NULL;NULL;02 96 66 13 50;NULL;27041;NULL;
-254483;FX;BASSET BOUVY BATIMENT;A;69 BRINDAS;NULL;NULL;04 78 45 60 36;NULL;27046;NULL;
-254484;FX;ATELIER PIERRICK RAGOT;NULL;44 NANTES;NULL;NULL;02 40 46 63 02;NULL;27048;NULL;
-254485;FX;MEUNIER ERIC;A;95 CERGY;NULL;NULL;01 34 25 01 14;NULL;27052;NULL;
-254486;FX;ALU PROJECT;A+;82 NEGREPELIS;NULL;NULL;05 63 30 85 60;NULL;27053;NULL;
-254487;FX;FERMETURE 2000 4694;A;38 RENAGE;NULL;NULL;04 76 91 01 57;NULL;27055;NULL;
-254488;FX;STORES ET FERMETURES;NULL;44 TRIGNAC;NULL;NULL;02 51 10 56 64;NULL;27056;NULL;
-254489;FX;PERSIANAS EL AVILA, C.A.;A;10 070 CARAC;NULL;NULL;5821 22 51 14 62;NULL;27061;NULL;
-254490;FX;VITRERIE MIROITERIE DES ALPES;A+;73 LE VIVIER;NULL;NULL;04 79 61 67 07;NULL;27083;NULL;
-254491;FX;SORECSO 4387;NULL;36 ST BENOIT;NULL;NULL;02 54 47 67 13;NULL;27103;NULL;
-254492;FX;VERANDALUX;A;26 LAVEYRON;NULL;NULL;0 ;NULL;27104;NULL;
-254493;FX;MENUISERIE VOLLMER;NULL;67 MELSHEIM;NULL;NULL;03 88 89 09 99;NULL;27111;NULL;
-254494;FX;MIROITERIE DU GAVE (EXPL);A;64 BAIGTS DE;NULL;NULL;05 59 65 32 94;NULL;27112;NULL;
-254495;FX;PENTAGONE MENUISERIES;A;04 SAINT TULL;NULL;NULL;04 92 72 51 60;NULL;27119;NULL;
-254496;FX;PERRIN MAZIER 999999;D;39 DOLE;NULL;NULL;03 84 82 13 97;ent.perrin-mazier(a)wanadoo.fr;27121;NULL;
-254497;FX;STORE OUEST;A;78 MAGNANVILL;NULL;NULL;01 34 78 56 26;NULL;27122;NULL;
-254498;FX;DIDIER;A+;51 REIMS;NULL;NULL;03 26 88 52 12;NULL;27128;NULL;
-254499;FX;REALMETAL;A+;68 WITTELSHEI;NULL;NULL;03 89 55 22 11;NULL;27130;NULL;
-254500;FX;LC BATIMENT;A;29 TAULE;NULL;NULL;02 98 79 03 82;NULL;27132;NULL;
-254501;FX;ANCEL;A;67 CHATENOIS;NULL;NULL;03 90 57 39 48;NULL;27135;NULL;
-254502;FX;PORTAL ALUMINIUM SYSTEMS;A+;13 La Ciotat;NULL;NULL;04 42 04 31 88;NULL;27138;NULL;
-254503;FX;GRANDO STORES BACHES;A;42 LA TALAUDI;NULL;NULL;04 77 47 51 66;NULL;27145;NULL;
-254504;FX;GUICHET E;A+;25 BESANCON;NULL;NULL;03 81 82 39 20;NULL;27152;NULL;
-254505;FX;FERNANDES JOAO;A;78 VERNOUILLE;NULL;NULL;01 39 71 71 14;NULL;27157;NULL;
-254506;FX;VMA FENETRIER;A+;74 Ville-la-G;NULL;NULL;04 50 71 91 45;NULL;27158;NULL;
-254507;FX;BORDEAUX STORES;NULL;33 CASTETS EN;NULL;NULL;05 56 62 73 73;NULL;27161;NULL;
-254508;FX;CHAPPUIS SARL;NULL;74 GROISY;NULL;NULL;04 50 68 04 75;NULL;27170;NULL;
-254509;FX;GERBER FRANCK;A;67 WASSELONNE;NULL;NULL;03 88 87 46 41;NULL;27172;NULL;
-254510;FX;LEVEQUE GILLES;A;61 BAGNOLES D;NULL;NULL;02 33 30 82 79;NULL;27175;NULL;
-254511;FX;BMCE POINT P CHATEAUROUX;A;36 CHATEAUROU;NULL;NULL;02 54 61 11 23;NULL;27177;NULL;
-254512;FX;BMCE POINT P BLOIS;B;41 BLOIS;NULL;NULL;0 ;NULL;27178;NULL;
-254513;FX;BMCE POINT P BLOIS;B;41 BLOIS;NULL;NULL;02 54 52 70 01;NULL;27178;NULL;
-254514;FX;BMCE POINT P ORLEANS;A;45 ORLEANS CE;NULL;NULL;02 43 35 43 76;NULL;27179;NULL;
-254515;FX;BMCE POINT P ROMORANTIN;A;41 ROMORANTIN;NULL;NULL;02 54 94 15 31;NULL;27180;NULL;
-254516;FX;ANJOU SERRURERIE;A;49 BRAIN SUR;NULL;NULL;02 41 54 99 09;NULL;27184;NULL;
-254517;FX;SCEMB 56;NULL;56 CAUDAN;NULL;NULL;02 97 76 92 87;NULL;27186;NULL;
-254518;FX;MEUBLES DE PARENTIS;NULL;40 PARENTIS E;NULL;NULL;05 58 78 53 22;NULL;27192;NULL;
-254519;FX;APSM;A+;41 BLOIS;NULL;NULL;02 54 78 83 07;NULL;27193;NULL;
-254520;FX;JOPPE SARL;D;LU 051 ESCH S;NULL;NULL;352 53 08 50 50;joppe(a)pt.lu;27195;NULL;
-254521;FX;COTTIER PASCAL PAM COTTIER;A;37 CHOUZE SUR;NULL;NULL;02 47 95 18 60;NULL;27198;NULL;
-254522;FX;JD SERVICES;A;56 AURAY;NULL;NULL;02 97 24 80 78;NULL;27206;NULL;
-254523;FX;EMIDIO FERREIRA;A;89 CHEVILLON;NULL;NULL;03 86 73 15 04;NULL;27208;NULL;
-254524;FX;MAGE YVAN;A;70 GRAY;NULL;NULL;03 84 65 47 40;NULL;27221;NULL;
-254525;FX;JB MENUISERIES;A+;70 ARC LES GR;NULL;NULL;03 84 65 32 77;NULL;27222;NULL;
-254526;FX;PASTANELLA FRANCOIS CLAUDIO;A+;05 GAP;NULL;NULL;04 92 53 70 55;NULL;27224;NULL;
-254527;FX;MAYOUFI;A;60 STE GENEVI;NULL;NULL;02 51 58 46 03;NULL;27236;NULL;
-254528;FX;BIG MAT BEREZIAT;A;71 MACON;NULL;NULL;03 85 30 32 56;NULL;27237;NULL;
-254529;FX;DRUFIN;A;45 ORLEANS;NULL;NULL;02 38 66 95 37;NULL;27239;NULL;
-254530;FX;FADIER;A;35 ARGENTRE D;NULL;NULL;02 23 55 01 91;NULL;27242;NULL;
-254531;FX;BARON;A+;53 CHANGE;NULL;NULL;02 43 49 25 02;NULL;27244;NULL;
-254532;FX;BARRERE GILLES;A;65 PINAS;NULL;NULL;05 62 40 28 52;NULL;27245;NULL;
-254533;FX;LALLIER AGENCEMENT;NULL;26 HAUTERIVES;NULL;NULL;04 75 68 55 50;NULL;27248;NULL;
-254534;FX;SCIANDRA BORIS;NULL;83 FREJUS;NULL;NULL;04 94 52 17 48;NULL;27249;NULL;
-254535;FX;ALU CONFORT;A+;20 BASTIA;NULL;NULL;04 95 30 65 62;contact(a)aluconfort.fr;27250;NULL;
-254536;FX;FRAUD DOMINIQUE - OUEST SELLERIE;A;35 LOHEAC;NULL;NULL;0 ;loheacsellerie(a)orange.fr;27264;NULL;
-254537;FX;BATIVER;D;65 IBOS;NULL;NULL;05 62 34 73 73;NULL;27266;NULL;
-254538;FX;SFP STORES FILMS PROTECTION;D;94 SAINT MAUR;NULL;NULL;01 48 83 67 82;NULL;27274;NULL;
-254539;FX;ESPACE SOLEIL;A+;58 COSNE SUR;NULL;NULL;03 86 26 95 66;espacesoleil58(a)orange.fr;27275;NULL;
-254540;FX;SMAC ACIEROID;A;31 TOULOUSE C;NULL;NULL;05 34 40 06 11;NULL;27279;NULL;
-254541;FX;BISES;D;78 Neauphlett;NULL;NULL;01 34 97 61 96;jht2(a)wanadoo.fr;27281;NULL;
-254542;FX;SFDR-SERRUR. FERRONNERIE;A;03 YZEURE;NULL;NULL;04 70 46 75 73;NULL;27286;NULL;
-254543;FX;KEREBEL PIERRE;NULL;29 GOUESNOU;NULL;NULL;02 98 37 97 23;NULL;27287;NULL;
-254544;FX;RIBOUT MICHEL;D;41 CELLETTES;NULL;NULL;02 54 70 42 26;NULL;27291;NULL;
-254545;FX;ZAKARIADES LAURENT;A+;20 AJACCIO;NULL;NULL;04 95 21 92 30;idealstores2(a)wanadoo.fr;27292;NULL;
-254546;FX;CONCEPTION MAINTENANCE 4538;NULL;93;NULL;NULL;01 41 58 56 57;NULL;27296;NULL;
-254547;FX;CONCEPTION MAINTENANCE 4538;NULL;93;NULL;NULL;01 48 56 56 57;c2m.montreuil(a)orange.fr;27296;NULL;
-254548;FX;EUROPLAST;A;52 CHALINDREY;NULL;NULL;03 25 88 99 01;NULL;27298;NULL;
-254549;FX;ROUSSEAU GUY;A;45 NEUVILLE A;NULL;NULL;02 38 91 82 16;NULL;27309;NULL;
-254550;FX;SAUVESTRE JEAN-LOUIS;A+;18 ST DOULCHA;NULL;NULL;02 48 65 11 34;jeanlouis.sauvestre(a)dbmail.com;27315;NULL;
-254551;FX;HOLGADO TORRES FRANCISCO VSF;A;63 AULNAT;NULL;NULL;04 73 60 30 99;NULL;27319;NULL;
-254552;FX;MIRAMOND ENTREPRISES;A;13 MARSEILLE;NULL;NULL;04 91 92 03 49;NULL;27322;NULL;
-254553;FX;DECOR SERVICE;A;92 MALAKOFF;NULL;NULL;01 42 53 88 09;NULL;27327;NULL;
-254554;FX;SHANTAKO;A;69 VILLEURBAN;NULL;NULL;0 ;NULL;27333;NULL;
-254555;FX;SHANTAKO;A;69 VILLEURBAN;NULL;NULL;04 72 04 54 26;NULL;27333;NULL;
-254556;FX;ECF ETUDE CONSTRUCTION;A;91 BRETIGNY S;NULL;NULL;01 60 85 30 76;NULL;27342;NULL;
-254557;FX;ECF ETUDE CONSTRUCTION;A;91 BRETIGNY S;NULL;NULL;01 60 85 30 76;e.c.f(a)wanadoo.fr;27342;NULL;
-254558;FX;CANCIANI JEAN VINCENT;A;69 VILLEURBAN;NULL;NULL;04 78 80 95 22;NULL;27347;NULL;
-254559;FX;AULNAY-GLACE;A;93 AULNAY SOU;NULL;NULL;01 48 79 92 07;NULL;27348;NULL;
-254560;FX;EC COM;A;94 ST MAUR DE;NULL;NULL;01 47 41 33 76;NULL;27350;NULL;
-254561;FX;CLAREO;A;10 MARIGNY LE;NULL;NULL;03 25 21 80 81;NULL;27351;NULL;
-254562;FX;FERMETURES & STORES DU;A;28 MEZIERES E;NULL;NULL;02 37 43 82 30;NULL;27352;NULL;
-254563;FX;LAURALU;A;94 ORMESSON S;NULL;NULL;0 ;lauralu(a)alicepro.fr;27353;NULL;
-254564;FX;TROUVE MICHEL;A;49 LIRE;NULL;NULL;02 40 09 91 73;NULL;27365;NULL;
-254565;FX;MECARAY;NULL;91 BONDOUFLE;NULL;NULL;01 60 86 40 76;NULL;27373;NULL;
-254566;FX;HUGUET CREICHE RJ;NULL;45 SAINT JEAN;NULL;NULL;02 38 22 38 20;NULL;27374;NULL;
-254567;FX;ACH 45 4897;NULL;45 CHECY;NULL;NULL;02 38 61 54 55;a.c.h.45(a)wanadoo.fr;27375;NULL;
-254568;FX;MEUNIER ET FILS;A;95 BERNE SUR;NULL;NULL;01 30 34 23 81;NULL;27376;NULL;
-254569;FX;LEROY MICHEL;B;83 BRIGNOLLES;NULL;NULL;04 94 72 01 15;NULL;27380;NULL;
-254570;FX;JCD MATERIAUX -;A;47 NERAC;NULL;NULL;05 53 97 09 44;NULL;27387;NULL;
-254571;FX;MONTIBELLER NICOLAS 4483;NULL;45 ORLEANS;NULL;NULL;02 38 66 39 98;NULL;27388;NULL;
-254572;FX;CICIARELLI ET FILS;A;30 CAISSARGUE;NULL;NULL;04 66 29 55 36;NULL;27391;NULL;
-254573;FX;RESEAU PRO BORDEAUX;NULL;33 BORDEAUX;NULL;NULL;05 56 43 17 96;NULL;27409;NULL;
-254574;FX;DU LEFF;A+;22 CHATELAUDR;NULL;NULL;02 96 74 11 23;NULL;27410;NULL;
-254575;FX;BOLLINGER 4723;NULL;68 VOGELSHEIM;NULL;NULL;03 89 72 97 21;NULL;27418;NULL;
-254576;FX;LA CLEF DU TEMPS;A;67 KILSTETT;NULL;NULL;03 88 96 67 63;NULL;27420;NULL;
-254577;FX;ATLANTIC SOUDURE 4510;NULL;17 LA ROCHELL;NULL;NULL;05 46 28 19 24;NULL;27425;NULL;
-254578;FX;GARNIER CLAUDE;D;35 POCE LES B;NULL;NULL;02 99 74 41 49;NULL;27426;NULL;
-254579;FX;SHMM STE HONFLEUR MENUIS METAL;A+;14 HONFLEUR C;NULL;NULL;02 31 89 09 50;NULL;27433;NULL;
-254580;FX;PERILLAT BERNARD;B;74 CHAPEIRY;NULL;NULL;04 50 68 26 20;NULL;27434;NULL;
-254581;FX;WURTH AIME;NULL;67 BOOTZHEIM;NULL;NULL;03 88 74 99 00;NULL;27439;NULL;
-254582;FX;MIROITERIE LAMOTHE;A;24 RIBERAC;NULL;NULL;05 53 90 00 17;NULL;27442;NULL;
-254583;FX;MPS MENUISERIE POSES;A;27 DAUBEUF PR;NULL;NULL;02 32 40 71 82;NULL;27445;NULL;
-254584;FX;AFL ART FENETRES LUMIERE;A+;45 AMILLY;NULL;NULL;02 38 89 42 47;NULL;27471;NULL;
-254585;FX;AFL ART FENETRES LUMIERE;A+;45 AMILLY;NULL;NULL;02 38 89 42 49;NULL;27471;NULL;
-254586;FX;DORAS ELCE MATERIAUX;NULL;52 LANGRES;NULL;NULL;03 25 87 34 19;NULL;27474;NULL;
-254587;FX;EFPE;A+;26 ST DONAT S;NULL;NULL;0 ;laurent.pollien(a)wanadoo.fr;27498;NULL;
-254588;FX;ED STORES SERRURERIE RJ;A;51 SAINT BRIC;NULL;NULL;03 26 07 24 63;NULL;27503;NULL;
-254589;FX;BIG MAT LABRUGUIERE;NULL;81 LABRUGUIER;NULL;NULL;05 63 74 20 41;NULL;27504;NULL;
-254590;FX;GRASSET SPORAFRIC;A+;CG POINTE NO;NULL;NULL;NULL;NULL;27505;NULL;
-254591;FX;GRASSET SPORAFRIC;A+;CG POINTE NO;NULL;NULL;331 73 76 91 11;jmlerondelle(a)sporafric.net;27505;NULL;
-254592;FX;GRASSET SPORAFRIC;A+;CG POINTE NO;NULL;NULL;02 42 94 47 36;contact(a)sporafric.net;27505;NULL;
-254593;FX;ELVIN;A+;18 BOURGES;NULL;NULL;02 48 48 19 18;o.chaumeau(a)elvin.fr;27508;NULL;
-254594;FX;ELVIN;A+;18 BOURGES;NULL;NULL;02 48 48 19 18;NULL;27508;NULL;
-254595;FX;AFL ANCIEN ETS FOESSEL PS;A;45 MONTARGIS;NULL;NULL;02 38 89 00 26;NULL;27511;NULL;
-254596;FX;AFL ANCIEN ETS FOESSEL PS;A;45 MONTARGIS;NULL;NULL;02 38 89 42 47;NULL;27511;NULL;
-254597;FX;FASQUEL 4413;NULL;83 LE THORONE;NULL;NULL;04 94 60 98 28;NULL;27514;NULL;
-254598;FX;RIDEAUX SERVICES FRANCE;A;69 CRAPONNE;NULL;NULL;04 78 57 95 68;NULL;27520;NULL;
-254599;FX;OMBRES ET STRUCTURES;B;26 ST PAUL LE;NULL;NULL;04 75 71 07 05;NULL;27522;NULL;
-254600;FX;SCHUMER & CIE 4499;NULL;51 SEZANNE;NULL;NULL;03 26 42 81 80;NULL;27523;NULL;
-254601;FX;SCHUMER & CIE 4499;NULL;51 SEZANNE;NULL;NULL;03 26 42 81 81;NULL;27523;NULL;
-254602;FX;COMERCIALIZADORA Y;B;CL TIAGO;NULL;NULL;0 ;osvaldo(a)toldosmacul.cl;27524;NULL;
-254603;FX;COMERCIALIZADORA Y;B;CL TIAGO;NULL;NULL;56 22 37 07 30;carla(a)toldomacul.cl;27524;NULL;
-254604;FX;COMERCIALIZADORA Y;B;CL TIAGO;NULL;NULL;56 22 37 07 30;sebastian(a)toldosmacul.cl;27524;NULL;
-254605;FX;DECORINA;B;CM ALA;NULL;NULL;237 33 42 84 72;NULL;27547;NULL;
-254606;FX;DECORINA;B;CM ALA;NULL;NULL;23 73 43 23 38;decorina(a)yahoo.fr;27547;NULL;
-254607;FX;DECORINA;B;CM ALA;NULL;NULL;23 73 42 84 72;decorinaa(a)yahoo.fr;27547;NULL;
-254608;FX;CCTR;A;69 GIVORS;NULL;NULL;0 ;NULL;27555;NULL;
-254609;FX;FORET;D;43 LEMPDES;NULL;NULL;04 71 76 58 05;gforet(a)foret-entreprise.fr;27567;NULL;
-254610;FX;FORET;D;43 LEMPDES;NULL;NULL;0 ;NULL;27567;NULL;
-254611;FX;CHAVIGNY BLOIS;B;41 BLOIS CEDE;NULL;NULL;02 54 20 85 46;NULL;27573;NULL;
-254612;FX;MENUI PRO;A+;42 ST PRIEST;NULL;NULL;04 77 79 67 19;NULL;27578;NULL;
-254613;FX;BAP FENETRES ET FERMETURE;A;75 PARIS;NULL;NULL;01 40 44 99 35;NULL;27581;NULL;
-254614;FX;ACTEA;A;67 WASSELONNE;NULL;NULL;03 88 59 14 07;NULL;27582;NULL;
-254615;FX;ACTEA;A;67 WASSELONNE;NULL;NULL;03 87 51 24 41;NULL;27582;NULL;
-254616;FX;LAFFEACH PHILIPPE;A;56 VANNES;NULL;NULL;0 ;NULL;27593;NULL;
-254617;FX;DEMANGEAU;D;44 LE LOROUX;NULL;NULL;02 40 36 52 74;NULL;27599;NULL;
-254618;FX;STORES FERMETURES;A+;18 BOURGES;NULL;NULL;02 48 50 74 52;NULL;27600;NULL;
-254619;FX;SMSL 4894;A+;50 AGNEAUX;NULL;NULL;02 33 77 35 31;NULL;27601;NULL;
-254620;FX;ACTI POSE 4780;A;42 SAINT ETIE;NULL;NULL;04 77 34 05 63;NULL;27603;NULL;
-254621;FX;SMAC 4334;NULL;78 MANTES LA;NULL;NULL;01 30 92 69 48;NULL;27608;NULL;
-254622;FX;TECHNI FERMETURES;A+;68 MULHOUSE;NULL;NULL;03 89 65 03 93;NULL;27610;NULL;
-254623;FX;AAA ALUMINIUM AUTOMATISME;D;97 REMIRE MON;NULL;NULL;05 94 35 47 63;aaa973(a)orange.fr;27614;NULL;
-254624;FX;AAA ALUMINIUM AUTOMATISME;D;97 REMIRE MON;NULL;NULL;05 94 35 63 75;micadom(a)orange.fr;27614;NULL;
-254625;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;09 74 76 23 75;NULL;27615;NULL;
-254626;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;09 74 76 15 81;NULL;27615;NULL;
-254627;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;01 47 06 60 25;NULL;27615;NULL;
-254628;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;npalatre(a)mpo-fen.fr;27615;NULL;
-254629;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;NULL;27615;NULL;
-254630;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;pferrion(a)mpofenetres.com;27615;NULL;
-254631;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;kjarry(a)mpo-fen.fr;27615;NULL;
-254632;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 94;NULL;27615;NULL;
-254633;FX;CDC CONCEPTION DEVELOPP.;NULL;80 HUCHENNEVI;NULL;NULL;0 ;NULL;27617;NULL;
-254634;FX;CYPRIANAISE DE MENUISERIE;A;66 SAINT CYPR;NULL;NULL;04 68 21 32 60;NULL;27620;NULL;
-254635;FX;RESEAU PRO HONFLEUR;NULL;14 HONFLEUR;NULL;NULL;02 31 89 24 01;NULL;27621;NULL;
-254636;FX;POLISSET;NULL;41 LAMOTTE BE;NULL;NULL;0 ;NULL;27624;NULL;
-254637;FX;BMCE POINT P;A;23 LA SOUTERR;NULL;NULL;05 55 63 94 85;NULL;27626;NULL;
-254638;FX;LES ATELIERS DU BOIS;B;21 VARANGES;NULL;NULL;03 80 31 34 02;NULL;27629;NULL;
-254639;FX;JACKY SERRE;B;07 CHOMERAC;NULL;NULL;04 75 64 17 24;NULL;27638;NULL;
-254640;FX;SCOP CREABOIS;B;35 MONFORT SU;NULL;NULL;02 99 07 42 75;t.baudoin(a)creabois.net;27640;NULL;
-254641;FX;POINT P BRETAGNE ST POL;A;29 SAINT POL;NULL;NULL;02 98 15 85 21;NULL;27647;NULL;
-254642;FX;VILLEGAS;A+;74 MARGENCEL;NULL;NULL;04 50 72 72 55;NULL;27648;NULL;
-254643;FX;LE TOIT;A;61 ALENCON CE;NULL;NULL;02 33 27 15 69;NULL;27651;NULL;
-254644;FX;LE JAMTEL AGENCEMENTS;A;50 SAINT LO C;NULL;NULL;02 33 57 29 16;NULL;27658;NULL;
-254645;FX;LE JAMTEL AGENCEMENTS;A;50 SAINT LO C;NULL;NULL;0 ;NULL;27658;NULL;
-254646;FX;POMART MICHEL;NULL;62 MONCHY CAY;NULL;NULL;03 21 04 68 52;NULL;27660;NULL;
-254647;FX;WARGNIER;D;91 PARAY VIEI;NULL;NULL;01 69 38 40 48;NULL;27663;NULL;
-254648;FX;BOURGUIGNON MENUISERIE;B;38 BEAUVOIR D;NULL;NULL;04 74 58 69 39;NULL;27669;NULL;
-254649;FX;ISO ECO;A;95 CORMEILLES;NULL;NULL;01 34 50 10 87;NULL;27673;NULL;
-254650;FX;GENERATION SOLEIL;NULL;77 TOUQUIN;NULL;NULL;01 43 63 84 61;NULL;27675;NULL;
-254651;FX;POINT P BRETAGNE - SIEGE PERE;NULL;35 RENNES CED;NULL;NULL;02 99 65 20 22;NULL;27677;NULL;
-254652;FX;LEADERS POSE SERVICES;D;77 Emerainvil;NULL;NULL;01 60 17 28 11;NULL;27679;NULL;
-254653;FX;ALU VERRE 61;A;61 MORTREE;NULL;NULL;02 33 12 59 26;NULL;27681;NULL;
-254654;FX;JOURLIN TOUT FAIRE;B;42 FEURS;NULL;NULL;04 77 26 12 90;NULL;27682;NULL;
-254655;FX;VERANDAS ET HABITAT FAINS 5012;A+;50 ST SAMSON;NULL;NULL;02 33 55 95 57;NULL;27702;NULL;
-254656;FX;ZION ALU VITRERIE;A;60 JAUX;NULL;NULL;03 44 90 75 89;NULL;27705;NULL;
-254657;FX;CLOTURE SERVICE;A+;37 CHAMBRAY L;NULL;NULL;02 47 25 82 72;cloture.service(a)wanadoo.fr;27706;NULL;
-254658;FX;BMRA POINT P ROANNE;A;42 ROANNE CED;NULL;NULL;04 77 72 72 88;NULL;27714;NULL;
-254659;FX;ISOLATION SERVICE;A+;36 LE BLANC;NULL;NULL;02 54 37 94 24;isolation-service(a)orange.fr;27718;NULL;
-254660;FX;CLAIRESPACE;A;60 COMPIEGNE;NULL;NULL;03 44 23 00 03;NULL;27719;NULL;
-254661;FX;SODISTORES 4749;A;45 CHECY;NULL;NULL;02 38 46 63 27;sodistores(a)wanadoo.fr;27721;NULL;
-254662;FX;MAISON PARISOT;A;52 CHAUMONT;NULL;NULL;03 25 01 23 26;Maison.PARISOT(a)wanadoo.fr;27722;NULL;
-254663;FX;RESEAU PRO COMPIEGNE;NULL;60 COMPIEGNE;NULL;NULL;03 44 83 13 54;NULL;27724;NULL;
-254664;FX;BORELLO ISOCLAIR 302837;B;38 ST CLAIR D;NULL;NULL;04 74 97 17 04;tborello(a)borello-isoclair.com;27728;NULL;
-254665;FX;BORELLO ISOCLAIR 302837;B;38 ST CLAIR D;NULL;NULL;0 ;NULL;27728;NULL;
-254666;FX;TRUCHON;A;38 ST MARTIN;NULL;NULL;04 76 44 25 41;NULL;27729;NULL;
-254667;FX;AFMH AGENCEMENT FERMETURE;NULL;94 FRESNES;NULL;NULL;01 49 84 21 83;NULL;27730;NULL;
-254668;FX;AUDIT SECURITE;NULL;33 BORDEAUX;NULL;NULL;05 56 98 17 73;NULL;27731;NULL;
-254669;FX;AUDIT SECURITE;NULL;33 BORDEAUX;NULL;NULL;0 ;NULL;27731;NULL;
-254670;FX;LEMAIRE PHILIPPE;A;92 FONTENAY A;NULL;NULL;01 43 50 33 29;NULL;27733;NULL;
-254671;FX;MIROITERIE BRESTOISE 4709;NULL;29 BREST CEDE;NULL;NULL;02 98 02 78 51;NULL;27735;NULL;
-254672;FX;GLASREN;A;35 RENNES;NULL;NULL;02 99 54 55 92;NULL;27737;NULL;
-254673;FX;GALLEGO SELLERIE;A;87 LIMOGES;NULL;NULL;05 55 30 18 68;NULL;27749;NULL;
-254674;FX;VAL OISE FERM-SOLUTION STORES;NULL;93 AULNAY SOU;NULL;NULL;01 48 19 69 01;NULL;27750;NULL;
-254675;FX;METALLERIE LA BOISSIERE;A;93 MONTREUIL;NULL;NULL;01 48 59 02 97;NULL;27752;NULL;
-254676;FX;DEBAILLE JEAN CLAUDE;A;34 VENDARGUES;NULL;NULL;04 67 02 06 17;NULL;27755;NULL;
-254677;FX;DARGAUD STORES;B;71 MACON;NULL;NULL;03 85 29 15 89;NULL;27757;NULL;
-254678;FX;ABS PROTECTION;B;26 VALENCE;NULL;NULL;04 75 55 54 30;NULL;27767;NULL;
-254679;FX;MIROITERIE DIJONNAISE;B;21 MARSANNAY;NULL;NULL;03 80 73 30 78;NULL;27774;NULL;
-254680;FX;LA FRANCAISE MIROITERIE;A+;94 L'HAY LES;NULL;NULL;01 46 87 17 27;NULL;27780;NULL;
-254681;FX;LA FRANCAISE MIROITERIE;A+;94 L'HAY LES;NULL;NULL;01 46 87 80 23;NULL;27780;NULL;
-254682;FX;CHAUSSON MAT. CAUSSADE;NULL;31 FENOUILLET;NULL;NULL;05 63 65 18 00;NULL;27796;NULL;
-254683;FX;SCI DE L'AQUILON;A+;14 CAEN;NULL;NULL;02 31 86 70 80;NULL;27797;NULL;
-254684;FX;COUTOUX GILLES ET ETIENNE;D;50 GER;NULL;NULL;02 33 69 53 22;NULL;27801;NULL;
-254685;FX;MAILLET DENIS;A;77 COULOMMIER;NULL;NULL;01 64 03 64 68;NULL;27803;NULL;
-254686;FX;SARL DES PLATANES;D;35 MORDELLES;NULL;NULL;02 99 60 04 89;NULL;27805;NULL;
-254687;FX;MIROITERIE VALLANZASCA;A+;74 SALLANCHES;NULL;NULL;04 50 47 92 75;NULL;27809;NULL;
-254688;FX;LAIR BERNARD;NULL;50 ST CLEMENT;NULL;NULL;02 99 14 63 08;NULL;27810;NULL;
-254689;FX;RENOLUX 4423;NULL;77 OZOIR LA F;NULL;NULL;01 64 05 14 51;NULL;27814;NULL;
-254690;FX;PAILLON PHILIPPE;A;37 LA CELLE S;NULL;NULL;0 ;ph.paillon(a)wanadoo.fr;27815;NULL;
-254691;FX;AVIS MTX - TOUT FAIRE;A;22 LOUDEAC;NULL;NULL;02 96 28 08 80;NULL;27824;NULL;
-254692;FX;AMLOR;A;55 BELLEVILLE;NULL;NULL;03 29 84 82 82;NULL;27825;NULL;
-254693;FX;RAFFORT MATERIAUX;A;74 PASSY;NULL;NULL;04 50 58 56 76;NULL;27826;NULL;
-254694;FX;BARD;D;42 RENAISON;NULL;NULL;04 77 64 43 94;etablissements-bard(a)orange.fr;27830;NULL;
-254695;FX;SERRURERIE ADAM;A;75 PARIS;NULL;NULL;01 49 70 01 95;NULL;27832;NULL;
-254696;FX;HA SERVICES;A;34 AGDE;NULL;NULL;04 67 94 12 53;NULL;27833;NULL;
-254697;FX;BARRAU ISOLAT. SERVICE OUVRAGE;D;64 GAN;NULL;NULL;05 59 21 67 56;j.barrau.iso(a)orange.fr;27835;NULL;
-254698;FX;SMSM - SERVICE MAINTENANC;A;77 GUERARD;NULL;NULL;01 64 65 63 26;NULL;27840;NULL;
-254699;FX;SOLOSTORES;A+;77 FONTAINEBL;NULL;NULL;01 64 22 90 14;contact(a)solostores.com;27841;NULL;
-254700;FX;SOLOSTORES;A+;77 FONTAINEBL;NULL;NULL;01 64 22 23 14;contact(a)solostores.com;27841;NULL;
-254701;FX;TISSERANT MTX TOUT FAIRE;A;88 GERARDMER;NULL;NULL;03 29 63 24 39;NULL;27842;NULL;
-254702;FX;JOLLOIS;A;95 SAINT BRIC;NULL;NULL;01 39 92 48 68;NULL;27843;NULL;
-254703;FX;ACECAM;A;01 FAREINS;NULL;NULL;04 74 60 79 89;NULL;27855;NULL;
-254704;FX;IMC INDUSTRIALISE MODULAIR;A;30 ROCHEFORT;NULL;NULL;04 90 15 16 30;imc(a)imcbat.com;27864;NULL;
-254705;FX;IMC INDUSTRIALISE MODULAIR;A;30 ROCHEFORT;NULL;NULL;04 90 15 16 30;NULL;27864;NULL;
-254706;FX;CL DIVERS OUEST V. NOURISSON;NULL;22 R;NULL;NULL;0 ;NULL;27865;NULL;
-254707;FX;MARSALA JM;A;57 GUEBENHOUS;NULL;NULL;01 34 29 61 20;NULL;27876;NULL;
-254708;FX;BEKO LEFEVRE;A;60 NOINTEL;NULL;NULL;04 44 19 18 88;NULL;27877;NULL;
-254709;FX;LES MENUISIERS REUNIS 4921;B;57 THIONVILLE;NULL;NULL;03 82 56 66 88;NULL;27878;NULL;
-254710;FX;STORE NET BACHE;B;35 LIVRE SUR;NULL;NULL;0 ;NULL;27880;NULL;
-254711;FX;MENUISERIE BETHUYS;A;85 CHALLANS;NULL;NULL;02 51 49 83 34;NULL;27882;NULL;
-254712;FX;EUROP FERMETURES;A;92 LEVALLOIS;NULL;NULL;01 42 70 10 00;NULL;27885;NULL;
-254713;FX;CHAUVET FABRICE;D;17 SAINT PIER;NULL;NULL;05 46 47 45 07;NULL;27888;NULL;
-254714;FX;DE NARDA;B;57 ARS SUR MO;NULL;NULL;03 87 60 81 23;NULL;27891;NULL;
-254715;FX;DE NARDA;B;57 ARS SUR MO;NULL;NULL;03 87 77 77 61;NULL;27891;NULL;
-254716;FX;ANGELY 4482;NULL;75 PARIS;NULL;NULL;01 43 38 17 90;NULL;27892;NULL;
-254717;FX;FENETRES ET VERANDAS DE;A;86 POITIERS;NULL;NULL;05 49 38 35 04;NULL;27899;NULL;
-254718;FX;FALSON JACQUES;B;83 TOULON;NULL;NULL;0 ;NULL;27900;NULL;
-254719;FX;LA CONCIERGERIE;A;67 STRASBOURG;NULL;NULL;03 88 22 22 55;NULL;27910;NULL;
-254720;FX;COMAFRANC LURE;A+;70 Lure;NULL;NULL;03 88 67 33 32;NULL;27913;NULL;
-254721;FX;COMAFRANC LURE;A+;70 Lure;NULL;NULL;03 84 22 52 32;NULL;27913;NULL;
-254722;FX;COMAFRANC LURE;A+;70 Lure;NULL;NULL;0 ;lure(a)comafranc.fr;27913;NULL;
-254723;FX;ASTUS;A;67 WOLFISHEIM;NULL;NULL;03 88 76 14 40;NULL;27915;NULL;
-254724;FX;CL DIVERS PNE A.CHAFFIN;NULL;54 P;NULL;NULL;0 ;NULL;27916;NULL;
-254725;FX;LA FENESTRIERE;NULL;54 COSMES ET;NULL;NULL;0 ;NULL;27918;NULL;
-254726;FX;NOVABAT - NOUVELLES;A;13 BOUC BEL A;NULL;NULL;04 42 22 22 45;NULL;27919;NULL;
-254727;FX;GIRAUDEAU;A;60 NOYON;NULL;NULL;03 44 09 00 97;NULL;27924;NULL;
-254728;FX;MONTIER ERICK;A;84 VILLELAURE;NULL;NULL;04 90 09 95 46;NULL;27928;NULL;
-254729;FX;DONATONE PIERRE;NULL;95 ST BRICE S;NULL;NULL;01 39 92 14 09;NULL;27933;NULL;
-254730;FX;NEBOUT ET VALENTIN SARL;D;16 BARBEZIEUX;NULL;NULL;05 45 78 32 14;zouzou.neboutvalentin(a)wanadoo.fr;27938;NULL;
-254731;FX;NEBOUT ET VALENTIN SARL;D;16 BARBEZIEUX;NULL;NULL;05 45 78 32 14;NULL;27938;NULL;
-254732;FX;CHARBONNIER MARTIAL;A;84 LA TOUR D';NULL;NULL;0 ;NULL;27942;NULL;
-254733;FX;PLEIN JOUR 17 4579;NULL;17 AYTRE;NULL;NULL;05 46 34 20 25;NULL;27945;NULL;
-254734;FX;BONNEMAISON JEAN PIERRE;NULL;33 CREON;NULL;NULL;0 ;NULL;27948;NULL;
-254735;FX;BERNARD;A+;91 JANVILLE S;NULL;NULL;01 60 82 75 62;NULL;27949;NULL;
-254736;FX;BHV PARLY 2;A;78 LE CHESNAY;NULL;NULL;01 39 23 38 89;NULL;27952;NULL;
-254737;FX;BHV PARLY 2;A;78 LE CHESNAY;NULL;NULL;01 39 23 34 87;NULL;27952;NULL;
-254738;FX;BHV CRETEIL;D;94 CRETEIL CE;NULL;NULL;01 49 60 45 64;NULL;27955;NULL;
-254739;FX;BHV MONTLHERY;D;91 MONTLHERY;NULL;NULL;01 49 60 46 65;NULL;27956;NULL;
-254740;FX;BHV VILLENEUVE LA GARENNE;D;92 VILLENEUVE;NULL;NULL;01 47 92 30 45;NULL;27958;NULL;
-254741;FX;BHV SAINT GENIS LAVAL;A;69 ST GENIS L;NULL;NULL;04 78 56 40 67;NULL;27960;NULL;
-254742;FX;BHV LIMONEST;D;69 LIMONEST C;NULL;NULL;04 78 35 66 44;NULL;27962;NULL;
-254743;FX;BOBAULT BERNARD;A;41 MAZANGE;NULL;NULL;02 54 72 08 57;NULL;27968;NULL;
-254744;FX;PARIS RIDEAUX;A;94 ALFORTVILL;NULL;NULL;01 43 75 40 14;contact(a)paris-rideaux.fr;27969;NULL;
-254745;FX;ATELIERS C;A;11 MONTFERRAN;NULL;NULL;04 68 60 53 16;NULL;27971;NULL;
-254746;FX;MESMIN;A;19 OBJAT;NULL;NULL;05 55 25 55 07;NULL;27972;NULL;
-254747;FX;MENUISERIE TOUT ALU;D;31 PECHBONNIE;NULL;NULL;05 67 00 70 89;NULL;27980;NULL;
-254748;FX;CHARRETON - ETS FENETRES;A;78 LA SEINE S;NULL;NULL;01 42 00 01 23;NULL;27983;NULL;
-254749;FX;VITRAFRANCE 4504;NULL;45 SULLY SUR;NULL;NULL;02 38 36 49 62;NULL;27984;NULL;
-254750;FX;TECHNIBAIE;D;92 BOULOGNE B;NULL;NULL;01 46 04 03 23;NULL;27986;NULL;
-254751;FX;CL DIVERS SUD EST L MALTETE;A;89 A;NULL;NULL;0 ;NULL;27987;NULL;
-254752;FX;MG ISOLATION VAL DE LOIRE;NULL;45 ST HILAIRE;NULL;NULL;02 38 45 65 12;mgisolation-vdl(a)worldonline.fr;27988;NULL;
-254753;FX;MAISONS ALASKA;A+;45 CHATEAUNEU;NULL;NULL;02 38 58 68 14;NULL;27989;NULL;
-254754;FX;PAGOT SAVOIE CHAMPAGNOLE;A;21 CHENOVE;NULL;NULL;03 84 52 20 71;NULL;27992;NULL;
-254755;FX;PUBLI DECO MEDIA PLUS;A;16 GOND PONTO;NULL;NULL;05 45 68 40 55;NULL;27997;NULL;
-254756;FX;KELPUB;A;69 LYON;NULL;NULL;04 78 64 63 26;NULL;27999;NULL;
-254757;FX;ARC EN CIEL 4502;NULL;75 PARIS;NULL;NULL;01 42 74 25 21;NULL;28004;NULL;
-254758;FX;ALUMINIUM VACHER BLAISOIS;A+;41 BLOIS;NULL;NULL;02 54 42 76 32;avb-etude(a)wanadoo.fr;28008;NULL;
-254759;FX;ALUMINIUM VACHER BLAISOIS;A+;41 BLOIS;NULL;NULL;02 54 42 76 32;NULL;28008;NULL;
-254760;FX;LE COMMERCIALISTE;A;60 BIENVILLE;NULL;NULL;03 44 40 47 85;NULL;28009;NULL;
-254761;FX;BATIMENT SECOND OEUVRE 4459;NULL;45 SAINT DENI;NULL;NULL;02 38 58 89 06;NULL;28010;NULL;
-254762;FX;BANGUI INTERNATIONAL;B;92 NANTERRE C;NULL;NULL;05 96 51 42 86;fabienne.bangui(a)wanadoo.fr;28011;NULL;
-254763;FX;BANGUI INTERNATIONAL;B;92 NANTERRE C;NULL;NULL;05 96 51 42 86;banguicaraibes(a)wanadoo.fr;28011;NULL;
-254764;FX;ATELIER LILLIU;A;48 RIEUTORT D;NULL;NULL;04 66 47 35 46;NULL;28019;NULL;
-254765;FX;SERAC - TOUT FAIRE;A;25 MORTEAU;NULL;NULL;03 81 67 10 06;NULL;28022;NULL;
-254766;FX;STORES FH 4962;NULL;67 HOENHEIM;NULL;NULL;03 88 18 55 76;stores.fh(a)wanadoo.fr;28024;NULL;
-254767;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;04 73 79 15 88;NULL;28025;NULL;
-254768;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;0 ;NULL;28025;NULL;
-254769;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;0 ;servibat.ovtcharenko(a)aliceadsl.fr;28025;NULL;
-254770;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;0 ;servibat.stievenart(a)aliceadsl.fr;28025;NULL;
-254771;FX;MIPHALU;A;94 BONNEUIL S;NULL;NULL;01 43 77 80 03;NULL;28032;NULL;
-254772;FX;ERAL MATERIAUX LE VERSOUD;B;38 LE VERSOUD;NULL;NULL;04 76 77 21 32;NULL;28037;NULL;
-254773;FX;HABITAT SERVICE FRANCE;NULL;45 TRAINOU;NULL;NULL;02 38 52 70 01;NULL;28039;NULL;
-254774;FX;CL DIVERS PNE J. MAVILLA;B;92 P;NULL;NULL;0 ;NULL;28042;NULL;
-254775;FX;CL DIVERS PNE J. MAVILLA;B;92 P;NULL;NULL;0 ;NULL;28042;NULL;
-254776;FX;CTBVL (CENTRE TECHN.;A;45 ORLEANS;NULL;NULL;02 38 62 45 46;NULL;28043;NULL;
-254777;FX;CTBVL (CENTRE TECHN.;A;45 ORLEANS;NULL;NULL;02 38 51 17 56;NULL;28043;NULL;
-254778;FX;ABD ALUMINIUM BUILDING DEVELOP;B;38 ST ETIENNE;NULL;NULL;04 76 65 52 18;e.escallier(a)alumyr.com;28046;NULL;
-254779;FX;CAREN RENE 4116;NULL;83 SIX FOURS;NULL;NULL;04 94 10 22 34;NULL;28052;NULL;
-254780;FX;POINT P BMSO BERGERAC;NULL;24 BERGERAC;NULL;NULL;05 53 57 03 22;NULL;28053;NULL;
-254781;FX;POINT P BMSO PINEUILH;A+;33 STE FOY LA;NULL;NULL;0 ;elodie.gardes(a)saint-gobain.com;28054;NULL;
-254782;FX;POINT P BMSO PINEUILH;A+;33 STE FOY LA;NULL;NULL;05 57 46 22 75;NULL;28054;NULL;
-254783;FX;RENARD PERE ET FILS TOUT;A;39 BLETTERANS;NULL;NULL;03 84 85 09 65;NULL;28056;NULL;
-254784;FX;MONTMIRAIL MATERIAUX;A;51 MONTMIRAIL;NULL;NULL;03 26 81 16 41;NULL;28057;NULL;
-254785;FX;MONTMIRAIL MATERIAUX;A;51 MONTMIRAIL;NULL;NULL;03 26 81 16 41;montmirailmateriaux.dominique(a)orange.fr;28057;NULL;
-254786;FX;STE D'EXPLOIT. GODELIER G;A+;60 MARGNY LES;NULL;NULL;03 44 83 80 80;godelier(a)wanadoo.fr;28058;NULL;
-254787;FX;ESTENAVES - TOUT FAIRE;A;33 BAZAS;NULL;NULL;05 56 25 13 61;NULL;28059;NULL;
-254788;FX;CMR ILE DE FRANCE 4549;NULL;93 ROSNY SOUS;NULL;NULL;01 48 97 45 72;NULL;28061;NULL;
-254789;FX;CMR ILE DE FRANCE 4549;NULL;93 ROSNY SOUS;NULL;NULL;0 ;NULL;28061;NULL;
-254790;FX;SYLVESTRE MAT. TOUT FAIRE;A;84 ISLE SUR L;NULL;NULL;04 90 76 89 22;NULL;28078;NULL;
-254791;FX;FREYTET - TOUT FAIRE;A;24 DAGLAN;NULL;NULL;05 53 31 32 20;NULL;28089;NULL;
-254792;FX;TURROU PATRICK;A;89 SAINT GEOR;NULL;NULL;03 86 46 55 97;NULL;28090;NULL;
-254793;FX;CL DIVERS OUEST M. GUISSEAU;A;44 R;NULL;NULL;0 ;NULL;28094;NULL;
-254794;FX;LEONARD DANIEL TOUT FAIRE;A;95 SOISY SOUR;NULL;NULL;01 39 34 24 66;NULL;28096;NULL;
-254795;FX;DECORITEX;A;14 CORMELLES;NULL;NULL;02 31 82 21 39;NULL;28102;NULL;
-254796;FX;DUBILLON REMY 4636;NULL;94 VILLIERS S;NULL;NULL;0 ;NULL;28103;NULL;
-254797;FX;FERMETURES NEUVILLAISES;NULL;76 LA NEUVILL;NULL;NULL;02 32 49 20 56;MARC.LELARGE(a)WANADOO.FR.;28105;NULL;
-254798;FX;GRAILLOT;A+;51 DORMANS;NULL;NULL;03 26 58 22 59;NULL;28106;NULL;
-254799;FX;GRAILLOT;A+;51 DORMANS;NULL;NULL;03 26 58 22 59;graillot.sas(a)orange.fr;28106;NULL;
-254800;FX;GRAILLOT;A+;51 DORMANS;NULL;NULL;0 ;NULL;28106;NULL;
-254801;FX;PELLETIER DOMINIQUE;A;41 MER;NULL;NULL;02 54 81 26 63;NULL;28107;NULL;
-254802;FX;CHAUSSON TRIALIS EPINOUZE;NULL;26 EPINOUZE;NULL;NULL;04 75 31 60 74;NULL;28108;NULL;
-254803;FX;LEUILLET PERE ET FILS;NULL;36 LA CHATRE;NULL;NULL;02 54 06 04 43;NULL;28111;NULL;
-254804;FX;LEUILLET PERE ET FILS;NULL;36 LA CHATRE;NULL;NULL;02 54 06 04 03;NULL;28111;NULL;
-254805;FX;THIEVENAZ MTX TOUT FAIRE;A;38 VOIRON;NULL;NULL;04 76 05 50 66;NULL;28116;NULL;
-254806;FX;MOREAU MATERIAUX TOUT FAIRE;A;87 CHALUS;NULL;NULL;05 55 78 54 04;NULL;28117;NULL;
-254807;FX;CABIA MTX - TOUT FAIRE;A;58 CLAMECY;NULL;NULL;03 86 27 28 92;NULL;28121;NULL;
-254808;FX;ESPACE DECO;A;86 LOUDUN;NULL;NULL;0 ;NULL;28123;NULL;
-254809;FX;PROT 4746;NULL;14 DIVES SUR;NULL;NULL;02 31 91 34 66;NULL;28124;NULL;
-254810;FX;BOUTIQUE DES STORES;B;74 CERVENS;NULL;NULL;04 50 94 62 62;pvermostore(a)aol.com;28127;NULL;
-254811;FX;STEINMETZ;B;63 ISSOIRE;NULL;NULL;04 73 55 10 73;NULL;28128;NULL;
-254812;FX;GANZITTI SERGE;A;95 DOMONT CED;NULL;NULL;01 39 35 03 10;NULL;28132;NULL;
-254813;FX;GRIEU SERRURERIE;A+;76 LE HAVRE;NULL;NULL;02 35 46 04 13;NULL;28133;NULL;
-254814;FX;GRIEU SERRURERIE;A+;76 LE HAVRE;NULL;NULL;0 ;NULL;28133;NULL;
-254815;FX;GRIEU SERRURERIE;A+;76 LE HAVRE;NULL;NULL;02 35 49 22 48;NULL;28133;NULL;
-254816;FX;TECHNIQUE ET TRADITION 4602;NULL;45 OUVROUER L;NULL;NULL;02 38 57 21 77;NULL;28134;NULL;
-254817;FX;TECHNIQUE ET TRADITION 4602;NULL;45 OUVROUER L;NULL;NULL;02 38 57 21 77;cso(a)wanadoo.fr;28134;NULL;
-254818;FX;COME CHRISTOPHE;A;45 ORLEANS;NULL;NULL;02 38 43 47 56;NULL;28137;NULL;
-254819;FX;TECHNI POSE 4477;NULL;12 RODEZ;NULL;NULL;05 65 78 99 43;NULL;28138;NULL;
-254820;FX;HORIZON AUTOMATISME;A+;74 CRAN GEVRI;NULL;NULL;04 50 69 09 86;horizon.automatisme(a)securiste.com;28141;NULL;
-254821;FX;HORIZON AUTOMATISME;A+;74 CRAN GEVRI;NULL;NULL;04 50 69 09 86;NULL;28141;NULL;
-254822;FX;IDESTORES;A;94 VILLEUNEUV;NULL;NULL;01 43 68 78 87;NULL;28142;NULL;
-254823;FX;EURO FENETRES 4422;NULL;94 CRETEIL;NULL;NULL;01 49 81 79 99;NULL;28143;NULL;
-254824;FX;DURAND - TOUT FAIRE;A;54 FOUG;NULL;NULL;03 83 62 76 63;NULL;28153;NULL;
-254825;FX;GABRIEL;B;38 Grenay;NULL;NULL;04 74 95 64 40;NULL;28154;NULL;
-254826;FX;AMBROSINI SAS TOUT FAIRE;B;57 ST AVOLD C;NULL;NULL;03 87 92 88 44;NULL;28156;NULL;
-254827;FX;BAFFET MTX - TOUT FAIRE;A;19 ST VIANCE;NULL;NULL;05 55 24 59 75;NULL;28157;NULL;
-254828;FX;WILHELM RIESS;A;68 DURRENENTZ;NULL;NULL;03 89 49 12 39;NULL;28158;NULL;
-254829;FX;MENUISERIE BERNE;A;42 ST CHAMOND;NULL;NULL;04 77 22 17 66;NULL;28159;NULL;
-254830;FX;NORMEN NORMANDIE 4529;NULL;27 ANGERVILLE;NULL;NULL;02 32 28 41 17;NULL;28160;NULL;
-254831;FX;BEAUGRAND;B;10 SAINT GERM;NULL;NULL;03 25 75 30 75;NULL;28161;NULL;
-254832;FX;ORSONI MARIE-FRANCE;A;20 AJACCIO;NULL;NULL;04 95 22 47 22;NULL;28164;NULL;
-254833;FX;MENUISERIE WINNE;NULL;59 DOUAI CEDE;NULL;NULL;03 27 96 82 28;NULL;28167;NULL;
-254834;FX;VERGNES PIERRE FILS TOUT FAIRE;A;24 MONPAZIER;NULL;NULL;05 53 22 43 95;NULL;28172;NULL;
-254835;FX;ISOPROFIL;D;89 MIGENNES;NULL;NULL;03 86 92 95 36;NULL;28176;NULL;
-254836;FX;DEFARGES CHRISTOPHE;A;45 HUISSEAU S;NULL;NULL;02 38 74 60 90;NULL;28180;NULL;
-254837;FX;RENOVATION CONSEIL HABITA 3027;NULL;76 MONTIVILLI;NULL;NULL;02 35 28 14 43;NULL;28182;NULL;
-254838;FX;SDF PALM ET LE NOUVEL;B;35 RENNES;NULL;NULL;02 99 51 27 98;NULL;28183;NULL;
-254839;FX;TREFLE VERT;D;74 MEGEVE;NULL;NULL;04 50 21 11 61;letreflevert(a)orange.fr;28184;NULL;
-254840;FX;BARTHE JACQUES;A;65 LOURDES;NULL;NULL;05 62 94 08 52;NULL;28188;NULL;
-254841;FX;ERKI;A;37 AMBOISE;NULL;NULL;02 47 57 40 65;NULL;28189;NULL;
-254842;FX;RODRIGUEZ JEAN PIERRE;A;65 LOURDES;NULL;NULL;05 62 42 15 47;jeanpierre.rodrigue(a)orange.fr;28199;NULL;
-254843;FX;MANCUSO ANTONIO;A;77 CHALIFERT;NULL;NULL;01 60 43 85 74;NULL;28200;NULL;
-254844;FX;STORE ETOILE;A;77 BROU SUR C;NULL;NULL;01 64 26 20 99;NULL;28201;NULL;
-254845;FX;STAEG (STE THIAISIENNE;A;94 VITRY SUR;NULL;NULL;01 46 82 74 83;NULL;28209;NULL;
-254846;FX;STREC 4838;NULL;93 BONDY;NULL;NULL;01 48 50 04 18;NULL;28216;NULL;
-254847;FX;ERGB ETUDES ET REALISATIONS;A;45 ORLEANS CE;NULL;NULL;02 38 51 02 83;saergb45(a)aol.com;28222;NULL;
-254848;FX;SABLEMAT - AG. MONTOIS;A;57 MONTOIS LA;NULL;NULL;03 82 45 16 98;NULL;28225;NULL;
-254849;FX;CROSNIER ET FILS;A;41 LA CHAUSSE;NULL;NULL;02 54 74 80 56;NULL;28226;NULL;
-254850;FX;SOHIDEL 4317;NULL;83 LA CROIX V;NULL;NULL;04 94 54 30 92;NULL;28230;NULL;
-254851;FX;APM BOURDON;A;45 DONNERY;NULL;NULL;02 38 59 59 25;NULL;28231;NULL;
-254852;FX;VERANDA SYSTEM'ALU;A;31 SEYSSES;NULL;NULL;05 61 56 99 06;NULL;28241;NULL;
-254853;FX;TILHET MTX - TOUT FAIRE;A;64 ARZACQ;NULL;NULL;05 59 04 42 22;NULL;28251;NULL;
-254854;FX;GST RENOVATION;A;45 SEMOY;NULL;NULL;02 38 66 12 21;NULL;28253;NULL;
-254855;FX;MENUISERIE GIRARDIN;A+;54 PAGNY SUR;NULL;NULL;03 83 81 79 14;NULL;28254;NULL;
-254856;FX;MENUISERIE GIRARDIN;A+;54 PAGNY SUR;NULL;NULL;03 83 81 79 14;hcoquard(a)menuiserie-girardin.com;28254;NULL;
-254857;FX;KERNEN SERGE;A;29 MELLAC;NULL;NULL;02 98 71 90 14;NULL;28260;NULL;
-254858;FX;CATENA ETS SMC;B;12 REQUISTA;NULL;NULL;05 65 46 60 21;NULL;28264;NULL;
-254859;FX;REVILLARD J.;A;74 CRUSEILLES;NULL;NULL;04 50 44 25 34;NULL;28271;NULL;
-254860;FX;FORCLUM ATE;A;76 CANTELEU;NULL;NULL;02 32 83 09 20;NULL;28277;NULL;
-254861;FX;MENUISERIE CASSIN;A;19 EGLETONS;NULL;NULL;05 55 93 93 11;NULL;28286;NULL;
-254862;FX;MENUISERIE CASSIN;A;19 EGLETONS;NULL;NULL;05 55 93 00 91;NULL;28286;NULL;
-254863;FX;PASCAL STORES;NULL;06 VENCE;NULL;NULL;04 93 24 07 60;NULL;28287;NULL;
-254864;FX;SERRURERIE SIGWALD;A;67 KRAUTERGER;NULL;NULL;03 88 95 70 93;NULL;28289;NULL;
-254865;FX;JGF FERREIRA JOQUIM GOMES;A;92 CHATENAY M;NULL;NULL;01 40 91 90 50;jgf(a)cegetel.net;28294;NULL;
-254866;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;64 33 65 30 57;NULL;28295;NULL;
-254867;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;0 ;james.adair(a)johnsonandcouzins.co.nz;28295;NULL;
-254868;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;64 33 65 30 57;sales(a)johnsonandcouzins.co.nz;28295;NULL;
-254869;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;64 33 65 30 57;graeme.kerr(a)johnosonandcouzins.co.nz;28295;NULL;
-254870;FX;SAMAC MTX - TOUT FAIRE;A;61 MORTAGNE A;NULL;NULL;02 33 25 53 41;NULL;28297;NULL;
-254871;FX;ROBERT - ETS MCM;NULL;79 THOUARS;NULL;NULL;05 49 66 09 63;NULL;28298;NULL;
-254872;FX;MCSO;A;17 JONZAC CED;NULL;NULL;05 46 48 21 70;NULL;28299;NULL;
-254873;FX;LEBASTARD ALAIN;D;35 BILLE;NULL;NULL;02 99 97 50 40;NULL;28304;NULL;
-254874;FX;EUROSECURITE;A;31 TOULOUSE;NULL;NULL;05 61 43 04 99;NULL;28306;NULL;
-254875;FX;CHAMPARNAUD - TOUT FAIRE;A;24 PERIGUEUX;NULL;NULL;05 53 07 05 48;NULL;28311;NULL;
-254876;FX;ROUSSEAU MTX - TOUT FAIRE;A;51 ESTERNAY;NULL;NULL;03 26 81 95 98;rousseaumateriaux(a)orange.fr;28317;NULL;
-254877;FX;EGLETONS PVC;A;19 EGLETONS;NULL;NULL;05 55 93 00 91;NULL;28319;NULL;
-254878;FX;BRILHAULT-CHARON 4544;NULL;28 CHATEAUDUN;NULL;NULL;02 37 45 67 55;NULL;28324;NULL;
-254879;FX;ABPM;A;63 LA ROCHE B;NULL;NULL;04 73 39 21 21;NULL;28329;NULL;
-254880;FX;BLOC ET JOB;A;54 LUNEVILLE;NULL;NULL;03á83469225;lesmateriauxvv(a)bloc-job.fr;28332;NULL;
-254881;FX;BLOC ET JOB;A;54 LUNEVILLE;NULL;NULL;03 83 73 38 29;expoluneville(a)bloc-job.fr;28332;NULL;
-254882;FX;BLOC ET JOB;A;54 LUNEVILLE;NULL;NULL;03 83 73 38 29;NULL;28332;NULL;
-254883;FX;JACOB AG. VIGNEULE -TOUT FAIRE;B;55 VIGNEULLES;NULL;NULL;03 29 89 56 17;materiaux.jacob(a)wanadoo.fr;28336;NULL;
-254884;FX;MCA - TOUT FAIRE;A;57 AUDUN LE T;NULL;NULL;03 82 91 27 82;NULL;28338;NULL;
-254885;FX;GUILLEMOT MTX TOUT FAIRE;A;56 LE FAOUET;NULL;NULL;02 97 23 04 69;NULL;28345;NULL;
-254886;FX;BRICORAMA HELIODIS LES ABRETS;NULL;38 LES ABRETS;NULL;NULL;04 76 37 43 45;NULL;28347;NULL;
-254887;FX;BOUCLET ETIENNE LORENOVE;A;41 VENDOME;NULL;NULL;02 54 72 21 75;NULL;28349;NULL;
-254888;FX;BERARDI PVC;B;54 HUSSIGNY G;NULL;NULL;03 82 44 40 87;NULL;28353;NULL;
-254889;FX;BOGO BERNARD;A;06 JUAN LES P;NULL;NULL;04 93 67 11 32;NULL;28355;NULL;
-254890;FX;SAISON MTX TOUT FAIRE 4825;NULL;62 LA CALOTER;NULL;NULL;03 21 90 78 28;NULL;28362;NULL;
-254891;FX;BATEC 4945;A;78 TRAPPES;NULL;NULL;01 34 61 39 05;NULL;28363;NULL;
-254892;FX;PS ISOLATION 2000 4229;NULL;57 ROZERIEULL;NULL;NULL;03 87 60 17 15;NULL;28364;NULL;
-254893;FX;LELEU PHILIPPE 4500;NULL;57 RECHICOURT;NULL;NULL;03 87 24 78 38;NULL;28370;NULL;
-254894;FX;MIROITERIE DU COTENTIN;D;50 VALOGNES;NULL;NULL;02 33 95 07 35;NULL;28375;NULL;
-254895;FX;BALUBOIS;A;88 GRANGES SU;NULL;NULL;03 29 57 56 98;NULL;28376;NULL;
-254896;FX;POT ET FILS TOUT FAIRE FLIXECO;NULL;80 FLIXECOURT;NULL;NULL;03 22 51 50 59;NULL;28377;NULL;
-254897;FX;ARENOVA;NULL;03 DROITURIER;NULL;NULL;04 70 55 04 78;NULL;28379;NULL;
-254898;FX;GLOWACZ JEAN;A;77 CRISENOY;NULL;NULL;01 64 38 86 14;NULL;28384;NULL;
-254899;FX;SEES BOIS;A;61 SEES;NULL;NULL;02 33 28 99 39;NULL;28386;NULL;
-254900;FX;AUDE MENUISERIE;A+;11 VILLENEUVE;NULL;NULL;04 68 26 10 92;NULL;28395;NULL;
-254901;FX;GEDIMAT EXCOFFIER;NULL;51 CHALONS EN;NULL;NULL;03 26 65 78 20;NULL;28400;NULL;
-254902;FX;CIDIC;A+;14 CAEN;NULL;NULL;02 31 86 70 80;NULL;28402;NULL;
-254903;FX;ROMANO STORES;A;69 VILLEURBAN;NULL;NULL;04 78 68 17 75;NULL;28404;NULL;
-254904;FX;MURISOL PIC;A;69 TALUYERS;NULL;NULL;04 78 48 27 78;NULL;28406;NULL;
-254905;FX;OG RENOVATION 4903;NULL;45 CHECY;NULL;NULL;02 38 58 85 29;NULL;28407;NULL;
-254906;FX;MVF SOCIETE D EXPLOIT DES ETS CLAUDE;D;19 USSEL;NULL;NULL;05 55 46 17 47;NULL;28413;NULL;
-254907;FX;PERROT DANIEL;A+;58 COSNE COUR;NULL;NULL;03 86 26 84 99;NULL;28415;NULL;
-254908;FX;ARI ABIT'A RENOV ISOL;A;76 GRAND COUR;NULL;NULL;02 35 67 75 32;NULL;28416;NULL;
-254909;FX;REYNAUD CAUVIN YVOSE;NULL;71 LOUHANS;NULL;NULL;05 62 72 38 01;NULL;28417;NULL;
-254910;FX;DESMONTEIX MATERIAUX;A;26 TAIN;NULL;NULL;04 75 07 02 65;NULL;28418;NULL;
-254911;FX;RUBIS ST LAURENT TOUT FAIRE;A;30 ST LAURENT;NULL;NULL;04 66 50 36 83;NULL;28419;NULL;
-254912;FX;GLAUSER INTERNATIONAL 4460;NULL;75 PARIS;NULL;NULL;0 ;NULL;28424;NULL;
-254913;FX;BATI BAIE 4464;NULL;31 SAINT OREN;NULL;NULL;05 62 88 23 69;NULL;28425;NULL;
-254914;FX;GIUSTI LUCIEN ET CIE;A;13 MARSEILLE;NULL;NULL;04 91 92 46 58;info.slg(a)nerim.net;28431;NULL;
-254915;FX;TOULOUSE MENUISERIE;A;31 TOULOUSE;NULL;NULL;05 61 92 86 44;NULL;28435;NULL;
-254916;FX;TOULOUSE MENUISERIE;A;31 TOULOUSE;NULL;NULL;05 61 40 88 22;NULL;28435;NULL;
-254917;FX;LE CHEVALIER;A+;93 MONTFERMEI;NULL;NULL;01 43 30 69 76;NULL;28439;NULL;
-254918;FX;PLOTON TOUT FAIRE;A;89 TOUCY;NULL;NULL;03 86 44 05 94;NULL;28441;NULL;
-254919;FX;GEDIMAT MICHEL;A;14 LIVAROT;NULL;NULL;02 31 63 12 96;NULL;28444;NULL;
-254920;FX;GEDIMAT MICHEL;A;14 LIVAROT;NULL;NULL;02 31 42 64 48;NULL;28444;NULL;
-254921;FX;2CI CASPAR CONFECTION LORENOVE;A;67 DUPPIGHEIM;NULL;NULL;03 88 49 77 20;NULL;28448;NULL;
-254922;FX;MENUISERIES DES LANDES;NULL;33 VILLANDRAU;NULL;NULL;05 56 25 82 09;NULL;28454;NULL;
-254923;FX;GONSARD ERIC;A;72 ST PAVACE;NULL;NULL;02 43 89 15 88;NULL;28455;NULL;
-254924;FX;KLEIN ALFRED;B;57 HARTZVILLE;NULL;NULL;03 87 25 59 98;NULL;28457;NULL;
-254925;FX;COQUEMPOT - TOUT FAIRE;A;62 FAUQUEBERG;NULL;NULL;03 21 39 23 30;NULL;28460;NULL;
-254926;FX;AP DIFFUSION;A;31 L'UNION;NULL;NULL;05 61 09 65 49;NULL;28462;NULL;
-254927;FX;RIO;NULL;31 TOULOUSE;NULL;NULL;05 62 75 39 38;NULL;28463;NULL;
-254928;FX;EURO CONFORT;A;14 CAEN;NULL;NULL;02 31 82 61 62;NULL;28467;NULL;
-254929;FX;DISTRIBAT TOUT FAIRE;A;28 NOGENT LE;NULL;NULL;02 37 51 99 97;NULL;28477;NULL;
-254930;FX;LEROY MERLIN FRANCE MASSY;A;91 MASSY;NULL;NULL;01 69 30 70 58;NULL;28481;NULL;
-254931;FX;LEGUEULT DIDIER;A;78 RAMBOUILLE;NULL;NULL;01 34 85 57 88;NULL;28482;NULL;
-254932;FX;POINT P MERIDIONALE CAUSSADE;A;82 CAUSSADE;NULL;NULL;05 63 65 05 83;NULL;28486;NULL;
-254933;FX;DELAHAYE HERVE;A;55 HEUDICOURT;NULL;NULL;03 29 89 57 80;NULL;28491;NULL;
-254934;FX;EFIBAT;B;08 SECHEVAL;NULL;NULL;03 24 58 43 20;NULL;28506;NULL;
-254935;FX;RAZE MARC;B;35 BRUC SUR;NULL;NULL;02 99 34 35 56;NULL;28521;NULL;
-254936;FX;GLAVERAL;D;37 MONTLOUIS;NULL;NULL;02 47 45 19 01;NULL;28527;NULL;
-254937;FX;DECORUM;A;76 ROUEN;NULL;NULL;02 35 14 96 78;NULL;28529;NULL;
-254938;FX;MOUTH ET CIE TOUT FAIRE;NULL;16 HIERSAC;NULL;NULL;05 45 90 81 89;NULL;28534;NULL;
-254939;FX;VALLETTE;A+;93 AULNAY SOU;NULL;NULL;01 48 65 93 70;NULL;28546;NULL;
-254940;FX;ABM FERMETURES;A;18 BOURGES;NULL;NULL;02 48 50 78 04;NULL;28550;NULL;
-254941;FX;ORGEL FRANCIS;A;57 LORQUIN;NULL;NULL;0 ;NULL;28552;NULL;
-254942;FX;DUMON ET FILS;B;43 FRUGERES L;NULL;NULL;04 71 76 36 17;NULL;28555;NULL;
-254943;FX;MAGISSON TOUT FAIRE;A;52 ST DIZIER;NULL;NULL;03 25 05 85 85;NULL;28561;NULL;
-254944;FX;LE MUR EN VERRE 4428;NULL;94 CHOISY LE;NULL;NULL;01 48 84 86 86;NULL;28562;NULL;
-254945;FX;ABBR SERRURERIE 4611;NULL;41 BLOIS;NULL;NULL;02 54 78 62 91;NULL;28568;NULL;
-254946;FX;ISOGLASS;D;45 SAINT PRYV;NULL;NULL;02 38 72 14 70;NULL;28570;NULL;
-254947;FX;SUD ALU 4673;NULL;20 SAN NICOLA;NULL;NULL;04 95 38 45 04;NULL;28576;NULL;
-254948;FX;LEROY MERLIN FRANCE CHELLES;A;77 CHELLES;NULL;NULL;01 64 21 88 77;NULL;28582;NULL;
-254949;FX;AMGB 4647;NULL;16 COGNAC;NULL;NULL;05 45 36 53 10;NULL;28585;NULL;
-254950;FX;DICAH 4478;NULL;17 ST HILAIRE;NULL;NULL;0 ;NULL;28586;NULL;
-254951;FX;BALOUZAT SERGE;A;03 LE DONJON;NULL;NULL;04 70 99 51 75;NULL;28588;NULL;
-254952;FX;BS BAIE ISOLATION SARL 5004;A;32 AUCH;NULL;NULL;05 62 06 27 36;NULL;28593;NULL;
-254953;FX;BS BAIE ISOLATION SARL 5004;A;32 AUCH;NULL;NULL;05 62 64 01 05;NULL;28593;NULL;
-254954;FX;GES CLAUDE ETS;A;47 MARMANDE;NULL;NULL;05 53 89 27 06;NULL;28594;NULL;
-254955;FX;MAZY FRERES;A;19 SAINT ROBE;NULL;NULL;05 55 25 20 16;NULL;28595;NULL;
-254956;FX;POMMIER MICHEL;A;42 ST JEAN SO;NULL;NULL;04 77 76 36 07;NULL;28600;NULL;
-254957;FX;THARIOT MAX;A;45 BOISCOMMUN;NULL;NULL;02 38 33 76 76;max.thariot(a)wanadoo.fr;28612;NULL;
-254958;FX;MARTIFEL;A;75 PARIS;NULL;NULL;01 47 64 03 73;NULL;28614;NULL;
-254959;FX;LEROY MERLIN FRANCE ANGERS;A;49 ST BARTHEL;NULL;NULL;02 41 34 71 29;NULL;28615;NULL;
-254960;FX;CHEZE TOUT FAIRE;B;03 EBREUIL;NULL;NULL;04 70 90 75 32;NULL;28620;NULL;
-254961;FX;SODEM;A;45 MEUNG SUR;NULL;NULL;02 38 45 19 80;NULL;28621;NULL;
-254962;FX;SPETTEL 302939;NULL;67 DUPPIGHEIM;NULL;NULL;03 88 49 13 40;NULL;28625;NULL;
-254963;FX;ARCELIN ANDRE;A;45 SULLY SUR;NULL;NULL;02 38 67 71 45;menuiserie.arcelin(a)wanadoo.fr;28628;NULL;
-254964;FX;GAUMERAIS;B;50 LE TEILLEU;NULL;NULL;02 33 59 97 59;NULL;28632;NULL;
-254965;FX;MENUISERIE MOREAU JEANDIN;A;71 TRAMAYES;NULL;NULL;0 ;NULL;28646;NULL;
-254966;FX;PAULIN;NULL;43 LANGEAC;NULL;NULL;04 71 02 06 76;NULL;28647;NULL;
-254967;FX;ROUSSEL - C.S.F.;NULL;28 BONNEVAL;NULL;NULL;02 37 47 25 86;NULL;28649;NULL;
-254968;FX;COMAFRANC VESOUL;A+;70 Vesoul;NULL;NULL;0 ;lesmateriaux.vesoul(a)comafranc.fr;28654;NULL;
-254969;FX;COMAFRANC VESOUL;A+;70 Vesoul;NULL;NULL;03 84 76 78 16;NULL;28654;NULL;
-254970;FX;MIROITERIE GENERALE DE;A+;77 TRILPORT;NULL;NULL;01 64 33 96 24;NULL;28660;NULL;
-254971;FX;GASQ CHRISTIAN;A;95 MERY SUR O;NULL;NULL;01 34 40 58 86;c.gasq(a)wanadoo.fr;28672;NULL;
-254972;FX;GASQ CHRISTIAN;A;95 MERY SUR O;NULL;NULL;01 34 21 60 30;NULL;28672;NULL;
-254973;FX;BENOIST MARC;A;22 PLOUEZEC;NULL;NULL;0 ;benoist.menuiserie(a)free.fr;28688;NULL;
-254974;FX;BENOIST MARC;A;22 PLOUEZEC;NULL;NULL;09 55 33 44 71;benoist.menuiserie(a)free.fr;28688;NULL;
-254975;FX;ROUSSEAU;A;49 LE PLESSIS;NULL;NULL;02 41 31 12 29;Nicolas.boisrame(a)rousseausa.fr;28696;NULL;
-254976;FX;ROUSSEAU;A;49 LE PLESSIS;NULL;NULL;02 41 31 12 29;NULL;28696;NULL;
-254977;FX;BRAUN A. SUCCESSEURS;A+;67 KRAUTERGER;NULL;NULL;03 88 95 79 12;NULL;28701;NULL;
-254978;FX;DOMECA;A;67 DUPPIGHEIM;NULL;NULL;03 88 49 77 44;NULL;28702;NULL;
-254979;FX;BRIOUDE FABRICATION;B;07 AUBENAS CE;NULL;NULL;04 75 93 83 33;NULL;28705;NULL;
-254980;FX;CL DIVERS SUD OUEST D LABARBE;NULL;16 A;NULL;NULL;02 99 14 83 82;NULL;28707;NULL;
-254981;FX;CL DIVERS SUD OUEST D LABARBE;NULL;16 A;NULL;NULL;05 56 13 36 76;NULL;28707;NULL;
-254982;FX;HABITAT CONFORT;A;33 BORDEAUX;NULL;NULL;05 56 24 90 22;NULL;28709;NULL;
-254983;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 41 70 10 96;NULL;28713;NULL;
-254984;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 60 44 05 40;NULL;28713;NULL;
-254985;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 64 65 85 05;NULL;28713;NULL;
-254986;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 64 21 61 76;NULL;28713;NULL;
-254987;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 64 84 50 64;NULL;28713;NULL;
-254988;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 48 19 92 16;NULL;28713;NULL;
-254989;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 60 94 02 26;NULL;28713;NULL;
-254990;FX;MILITON;A;36 ISSOUDUN;NULL;NULL;02 54 03 20 06;NULL;28725;NULL;
-254991;FX;BSM;A;30 OULINS;NULL;NULL;04 70 34 03 03;NULL;28731;NULL;
-254992;FX;TAHITI NEON 4678;NULL;PF EETE TAHIT;NULL;NULL;0 ;NULL;28738;NULL;
-254993;FX;TEXITOILES;A+;72 SOLESMES;NULL;NULL;02 43 92 56 61;TEXITOILED(a)WANADOO.FR;28740;NULL;
-254994;FX;DOMOREA 4395;NULL;33 PESSAC;NULL;NULL;05 56 15 00 09;NULL;28751;NULL;
-254995;FX;TRIA B;A;75 PARIS;NULL;NULL;0 ;bonnemain.vincent(a)free.fr;28757;NULL;
-254996;FX;TRIA B;A;75 PARIS;NULL;NULL;0 ;NULL;28757;NULL;
-254997;FX;DV CONSTRUCTION;A;33 MERIGNAC C;NULL;NULL;02 38 78 10 62;NULL;28759;NULL;
-254998;FX;DV CONSTRUCTION;A;33 MERIGNAC C;NULL;NULL;02 38 78 11 28;NULL;28759;NULL;
-254999;FX;DV CONSTRUCTION;A;33 MERIGNAC C;NULL;NULL;02 38 78 10 17;NULL;28759;NULL;
-255000;FX;MOUTH NORBERT;A;57 LES ETANGS;NULL;NULL;03 87 64 20 53;NULL;28760;NULL;
-255001;FX;JACQUES ET MONGELLAZ;A;39 MARNOZ;NULL;NULL;03 84 37 52 91;NULL;28766;NULL;
-255002;FX;HUGUET CREICHE METALLERIE 4693;A;45 INGRE;NULL;NULL;02 38 22 38 20;NULL;28767;NULL;
-255003;FX;ESPRIT FREDERIC;A;21 DIJON;NULL;NULL;03 25 87 24 63;NULL;28778;NULL;
-255004;FX;SAFIP D'ARMOR;NULL;22 TREGUIER;NULL;NULL;02 96 92 22 02;NULL;28781;NULL;
-255005;FX;COLSON ET FROMONT;A;10 LA CHAPELL;NULL;NULL;03 25 74 69 13;colson-fromont(a)wanadoo.fr;28782;NULL;
-255006;FX;SOCIETE D'EXPLOITTION RENOFFEN;A;67 REISCHSTET;NULL;NULL;03 88 20 90 81;NULL;28788;NULL;
-255007;FX;BERLO 4597;NULL;66 VINCA;NULL;NULL;04 68 38 53 03;NULL;28792;NULL;
-255008;FX;TROUILLARD POINT P PONTS DE CE;A;49 LES PONTS;NULL;NULL;02 41 69 96 36;NULL;28793;NULL;
-255009;FX;ERIKA DIFFUSION;A;86 NAINTRE;NULL;NULL;05 49 90 28 29;NULL;28795;NULL;
-255010;FX;SMF;A;94 PLESSIS TR;NULL;NULL;01 56 31 06 12;NULL;28796;NULL;
-255011;FX;MANEM JACQUES;A;91 ITTEVILLE;NULL;NULL;01 64 93 69 41;NULL;28797;NULL;
-255012;FX;AVS;B;74 THYEZ;NULL;NULL;04 50 34 94 35;NULL;28801;NULL;
-255013;FX;LOGIPLAST;A+;76 HARFLEUR;NULL;NULL;02 35 24 88 89;NULL;28803;NULL;
-255014;FX;LOGIPLAST;A+;76 HARFLEUR;NULL;NULL;02 35 24 88 89;LOGIPLAST.PRO @ wanadoo.fr;28803;NULL;
-255015;FX;LECLERC JEAN-PAUL;NULL;67 STRASBOURG;NULL;NULL;03 88 34 65 46;NULL;28804;NULL;
-255016;FX;FRANCE FERMETURES;NULL;18 VIERZON;NULL;NULL;0 ;NULL;28806;NULL;
-255017;FX;LAPORTE 4764;NULL;31 L'ISLE EN;NULL;NULL;05 61 88 79 36;NULL;28814;NULL;
-255018;FX;GRAVIER JEAN CLAUDE;NULL;35 RENNES;NULL;NULL;02 99 53 16 08;NULL;28817;NULL;
-255019;FX;SOLER ROBERT;A;60 GOINCOURT;NULL;NULL;03 44 45 28 98;NULL;28829;NULL;
-255020;FX;POIROT DENIS;A;90 LA CHAPELL;NULL;NULL;03 84 27 67 97;NULL;28831;NULL;
-255021;FX;RIDOLFI;D;21 QUETIGNY;NULL;NULL;03 80 46 68 35;NULL;28833;NULL;
-255022;FX;FLORES SERGE 4199;NULL;83 FREJUS;NULL;NULL;04 94 40 10 87;NULL;28840;NULL;
-255023;FX;AVC SECURITE;A;45 ORLEANS;NULL;NULL;02 38 84 35 68;NULL;28843;NULL;
-255024;FX;AVC SECURITE;A;45 ORLEANS;NULL;NULL;02 38 86 19 00;NULL;28843;NULL;
-255025;FX;ORTIZ;A;14 CAEN;NULL;NULL;02 31 73 71 90;NULL;28853;NULL;
-255026;FX;KERBRAT MTX;A;29 PLOUESCAT;NULL;NULL;02 98 61 91 88;NULL;28854;NULL;
-255027;FX;EQUIPEMENT ET CONFORT 4448;NULL;91 SAINT MICH;NULL;NULL;01 69 04 29 11;NULL;28857;NULL;
-255028;FX;LEROY MERLIN FRANCE MONTSOULT;A;95 MONTSOULT;NULL;NULL;01 34 69 98 81;NULL;28865;NULL;
-255029;FX;BOIS ALUMINIUM PVC BAP;A;60 GRANDU;NULL;NULL;03 44 09 76 29;NULL;28868;NULL;
-255030;FX;CHRISTIAN FERMETURES;A+;77 OZOIR LA F;NULL;NULL;01 60 28 63 75;NULL;28871;NULL;
-255031;FX;GUINEHUT ALAIN;A;49 LES ROBIER;NULL;NULL;02 41 38 02 82;NULL;28872;NULL;
-255032;FX;L ATELIER DE LA TOILE;A;85 LA MOTHE A;NULL;NULL;02 51 38 67 09;NULL;28873;NULL;
-255033;FX;LIAUME 4977;A;37 LARCAY;NULL;NULL;0 ;NULL;28874;NULL;
-255034;FX;PROTAG PROTECTION;D;75 PARIS;NULL;NULL;01 45 32 09 44;NULL;28875;NULL;
-255035;FX;RESEAU PRO BATI DECOR METZ;NULL;08 CHARLEVILL;NULL;NULL;03 24 53 39 09;NULL;28878;NULL;
-255036;FX;TAVERNIER JACQUES;A;45 CHATILLON;NULL;NULL;02 38 96 00 98;NULL;28880;NULL;
-255037;FX;LSK FENETRES LORENOVE;NULL;17 LA ROCHELL;NULL;NULL;05 46 43 08 65;NULL;28888;NULL;
-255038;FX;AJI MATERIAUX;B;35 JANZE;NULL;NULL;02 99 47 35 76;NULL;28889;NULL;
-255039;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;mickaelgabillard.spbm(a)orange.fr;28894;NULL;
-255040;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;0 ;franckcherif.spbm(a)orange.fr;28894;NULL;
-255041;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;benoitsable.spbm(a)wanadoo.fr;28894;NULL;
-255042;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;NULL;28894;NULL;
-255043;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;0 ;philippevalat.spbm(a)orange.fr;28894;NULL;
-255044;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;laurentmartin.spbm(a)orange.fr;28894;NULL;
-255045;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;damienflerchinger.spbm(a)orange.fr;28894;NULL;
-255046;FX;MENUISERIE DU LAURAGAIS;A;31 VILLEFRANC;NULL;NULL;05 61 81 59 29;NULL;28897;NULL;
-255047;FX;TOLEDO FERMETURES;A+;64 LESCAR;NULL;NULL;05 59 81 00 46;NULL;28898;NULL;
-255048;FX;SONDAZ NOEL;D;74 CHOISY;NULL;NULL;04 50 77 46 33;NULL;28901;NULL;
-255049;FX;DEMARET PHILIPPE;NULL;14 NOYERS BOC;NULL;NULL;02 31 77 56 81;NULL;28912;NULL;
-255050;FX;MENUISERIE DE L'EST;B;57 GANDRANGE;NULL;NULL;03 87 58 30 24;menuiserie.est(a)wanadoo.fr;28913;NULL;
-255051;FX;TOP-FERM;A;68 SPECHBACH;NULL;NULL;0 ;NULL;28917;NULL;
-255052;FX;COFELY;A;64 BORDES CED;NULL;NULL;05 59 53 26 55;NULL;28919;NULL;
-255053;FX;FAUCHE JACQUES;A;38 SAINT EGRE;NULL;NULL;04 76 27 43 21;NULL;28928;NULL;
-255054;FX;DEVULDER BERTRAND;NULL;62 FAMPOUX;NULL;NULL;03 21 59 29 52;NULL;28932;NULL;
-255055;FX;ABCD 4609;NULL;34 BEZIERS;NULL;NULL;04 67 11 09 39;NULL;28940;NULL;
-255056;FX;ATA;A;69 MEYZIEU;NULL;NULL;04 72 45 02 53;NULL;28956;NULL;
-255057;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;lionel.groseille(a)franciaflex.com;28958;NULL;
-255058;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;aline.perche(a)franciaflex.com;28958;NULL;
-255059;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;michele.gaultier(a)franciaflex.com;28958;NULL;
-255060;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;veronique.lozachmeur(a)franciaflex.com;28958;NULL;
-255061;FX;PHILIPPE JACQUES;NULL;22 MAEL CARHA;NULL;NULL;02 98 10 12 45;NULL;28965;NULL;
-255062;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;swatson(a)theawningcompany.co.uk;28974;NULL;
-255063;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Richard.May(a)theawningcompany.co.uk;28974;NULL;
-255064;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Bryce.Ratcliffe(a)theawningcompany.co.uk;28974;NULL;
-255065;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Catherine.conway(a)theawningcompany.co.uk;28974;NULL;
-255066;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;NULL;28974;NULL;
-255067;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Andria.Cowan(a)theawningcompany.co.uk;28974;NULL;
-255068;FX;THAWEEWAT CANVAS;D;TH 10 BANGKOK;NULL;NULL;66 27 42 27 87;nakorn(a)thaweewat.com;28983;NULL;
-255069;FX;MULONNIERE;A;35 JANZE;NULL;NULL;02 99 47 26 34;NULL;28986;NULL;
-255070;FX;POINT P BMSO AYTRE;NULL;17 AYTRE;NULL;NULL;06 46 44 65 66;NULL;28987;NULL;
-255071;FX;ATRIO;A+;38 SASSENAGE;NULL;NULL;08 20 90 07 26;NULL;28989;NULL;
-255072;FX;COMAFRANC CERNAY;A+;68 Cernay;NULL;NULL;03 89 75 64 00;NULL;28993;NULL;
-255073;FX;COMAFRANC CERNAY;A+;68 Cernay;NULL;NULL;0 ;berche(a)comafranc.fr;28993;NULL;
-255074;FX;PUJOL JM;A+;11 PALAJA;NULL;NULL;04 68 79 73 34;NULL;28997;NULL;
-255075;FX;GEDIMAT AUGRY;A;17 VILLIERS C;NULL;NULL;05 46 33 03 08;NULL;29000;NULL;
-255076;FX;METALLERIE GRAND;A;71 LA ROCHE V;NULL;NULL;03 85 37 78 82;NULL;29002;NULL;
-255077;FX;WARSMANN;B;08 NOUZONVILL;NULL;NULL;0 ;NULL;29004;NULL;
-255078;FX;WARSMANN;B;08 NOUZONVILL;NULL;NULL;03 24 53 75 24;NULL;29004;NULL;
-255079;FX;BARRERE DUCOURTHIAL;A;03 MONTLUCON;NULL;NULL;04 70 06 60 09;NULL;29008;NULL;
-255080;FX;ATELIER JAROUSSEAU;A;85 MORTAGNE S;NULL;NULL;02 51 65 17 88;NULL;29011;NULL;
-255081;FX;VBM;D;49 BAUGE;NULL;NULL;02 41 89 01 50;NULL;29012;NULL;
-255082;FX;BMCE POINT P PERE;NULL;45 ORLEANS CE;NULL;NULL;0 ;NULL;29018;NULL;
-255083;FX;COMAFRANC PERE;A+;90 BELFORT;NULL;NULL;03 84 26 33 79;NULL;29019;NULL;
-255084;FX;COMAFRANC PERE;A+;90 BELFORT;NULL;NULL;0 ;compta.fournisseur(a)comafranc.fr;29019;NULL;
-255085;FX;COMASUD PERE;NULL;13 MARSEILLE;NULL;NULL;0 ;NULL;29020;NULL;
-255086;FX;COMASUD PERE;NULL;83 BRIGNOLES;NULL;NULL;04 94 69 33 11;NULL;29025;NULL;
-255087;FX;MATERIAUX SERVICE PERE;NULL;92 CLAMART;NULL;NULL;01 46 30 12 43;NULL;29026;NULL;
-255088;FX;MEGNIEN PERE;NULL;86 VOUNEUIL S;NULL;NULL;0 ;NULL;29027;NULL;
-255089;FX;MOREAU PERE;NULL;54 NANCY;NULL;NULL;0 ;NULL;29028;NULL;
-255090;FX;RESEAU PRO CENTRE OUEST;NULL;37 ST PIERRE;NULL;NULL;0 ;NULL;29030;NULL;
-255091;FX;RESEAU PRO IDF;NULL;94 BONNEUIL S;NULL;NULL;0 ;NULL;29032;NULL;
-255092;FX;POINT P PERE;NULL;73 CHAMBERY C;NULL;NULL;04 79 96 80 49;NULL;29033;NULL;
-255093;FX;POINT P PERE;NULL;60 NOYON;NULL;NULL;0344B094409;NULL;29035;NULL;
-255094;FX;POINT P PERE SONEN;NULL;76 LE HAVRE;NULL;NULL;0 ;NULL;29037;NULL;
-255095;FX;SAMSE;D;38 GRENOBLE;NULL;NULL;04 76 46 88 67;NULL;29040;NULL;
-255096;FX;SAMSE;D;38 GRENOBLE;NULL;NULL;0 ;eric-vogler(a)samse.fr;29040;NULL;
-255097;FX;BRICORAMA PERE;B;93 NOISY LE G;NULL;NULL;0 ;NULL;29045;NULL;
-255098;FX;EURODRAP;NULL;75 PARIS;NULL;NULL;01 43 70 26 99;david(a)suntwist.fr;40002;NULL;
-255099;FX;CL DIVERS INTERIEURS;NULL;45 CHECY;NULL;NULL;0 ;NULL;40009;NULL;
-255100;FX;BS DECORS;NULL;78 LES MUREAU;NULL;NULL;01 30 99 65 50;NULL;40010;NULL;
-255101;FX;MADECO;A+;59 PONT A MAR;NULL;NULL;03 20 18 06 01;NULL;40016;NULL;
-255102;FX;MADECO;A+;59 PONT A MAR;NULL;NULL;0 ;vlecocq(a)madeco.fr;40016;NULL;
-255103;FX;CL DIVERS APPRO INTERIEUR;NULL;45 CHECY;NULL;NULL;02 38 60 41 80;NULL;40021;NULL;
-255104;FX;FIMA 4638;NULL;43 TENCE;NULL;NULL;04 71 65 42 11;NULL;40031;NULL;
-255105;FX;TRANSPORTS LOTRA 6005;NULL;45 ORMES;NULL;NULL;02 38 74 75 74;NULL;40032;NULL;
-255106;FX;CLIPS;A+;14 FALAISE;NULL;NULL;02 31 40 07 50;NULL;40047;NULL;
-255107;FX;BHV PARIS;D;75 PARIS;NULL;NULL;01 42 74 95 63;NULL;40049;NULL;
-255108;FX;BHV PARIS;D;75 PARIS;NULL;NULL;0 ;isabelle.lechampion(a)franciaflex.com;40049;NULL;
-255109;FX;DIMATER;NULL;69 CALUIRE ET;NULL;NULL;04 78 23 30 86;NULL;40061;NULL;
-255110;FX;CL DIVERS INTERIEURS SANS TVA;NULL;45 CHECY;NULL;NULL;0 ;NULL;40062;NULL;
-255111;FX;SNER;A+;14 FALAISE;NULL;NULL;02 54 44 24 33;NULL;40063;NULL;
-255112;FX;SNER;A+;14 FALAISE;NULL;NULL;02 31 40 16 65;NULL;40063;NULL;
-255113;FX;SNER;A+;14 FALAISE;NULL;NULL;0 ;NULL;40063;NULL;
-255114;FX;SNER;A+;14 FALAISE;NULL;NULL;02 35 63 98 52;NULL;40063;NULL;
-255115;FX;ABASSES INGENERIE;A;42 FARNAY;NULL;NULL;04 77 73 44 48;NULL;40065;NULL;
-255116;FX;BCL DECOR SAS;NULL;89 AUXERRE CE;NULL;NULL;03 86 94 82 80;bcl-decor(a)wanadoo.fr;40072;NULL;
-255117;FX;AGENOR;A;45 ST JEAN DE;NULL;NULL;02 38 61 57 99;NULL;40074;NULL;
-255118;FX;CLOISAL;A;56 QUEVEN;NULL;NULL;02 97 05 40 91;NULL;40085;NULL;
-255119;FX;FRANCIAFLEX OUTILS DE VENTE;NULL;45 CHECY;NULL;NULL;0 ;NULL;40090;NULL;
-255120;FX;ROCHE HABITAT;NULL;69 St BONNET;NULL;NULL;04 72 48 31 90;NULL;45001;NULL;
-255121;FX;ROCHE HABITAT;NULL;69 St BONNET;NULL;NULL;0 ;NULL;45001;NULL;
-255122;FX;PERSONNEL VENTES EXTERIEUR;NULL;38 LA TOUR DU;NULL;NULL;0 ;NULL;45004;NULL;
-255123;FX;CL DIVERS EXTERIEURS FOURN;NULL;38 LA TOUR DU;NULL;NULL;02 47 92 22 60;NULL;45009;NULL;
-255124;FX;CL DIVERS EXTERIEURS FOURN;NULL;38 LA TOUR DU;NULL;NULL;0 ;NULL;45009;NULL;
-255125;FX;FRANCE FERMETURES;NULL;18 VIERZON CE;NULL;NULL;08 25 08 08 16;NULL;45027;NULL;
-255126;FX;FRANCE FERMETURES;NULL;18 VIERZON CE;NULL;NULL;02 48 52 11 67;NULL;45027;NULL;
-255127;FX;FRANCE FERMETURES;NULL;18 VIERZON CE;NULL;NULL;0 ;NULL;45027;NULL;
1
0
25 Feb '14
Author: kmorin
Date: 2014-02-25 10:21:45 +0100 (Tue, 25 Feb 2014)
New Revision: 13
Url: http://codelutin.com/projects/faxtomail/repository/revisions/13
Log:
add clients sample
Added:
trunk/faxtomail-service/src/main/resources/fx_clients.csv
Added: trunk/faxtomail-service/src/main/resources/fx_clients.csv
===================================================================
--- trunk/faxtomail-service/src/main/resources/fx_clients.csv (rev 0)
+++ trunk/faxtomail-service/src/main/resources/fx_clients.csv 2014-02-25 09:21:45 UTC (rev 13)
@@ -0,0 +1,1582 @@
+Id_Correspondance;Societe;Nom;Caracteristique1;Caracteristique2;Caracteristique3;Client_Top;Numero_Fax;Adresse_Mail;Code_Client;Objet_Message;Destination
+253547;FX;DETAMPLE DANIEL;A;71 UXEAU;NULL;NULL;03 85 85 13 55;detampledaniel(a)nimeo.fr;22153;NULL;
+253548;FX;BARSACQ;A+;40 SOUSTONS;NULL;NULL;05 58 41 22 17;christian.barsacq(a)wanadoo.fr;22154;NULL;
+253549;FX;CUAZ PEROLIN MAURICE;NULL;38 LA BATIE D;NULL;NULL;04 76 32 18 57;NULL;22184;NULL;
+253550;FX;LOGICLOS;NULL;62 ANNEZIN LE;NULL;NULL;03 21 57 16 25;NULL;22186;NULL;
+253551;FX;CHASSIER ALAIN;A;37 DRUYE;NULL;NULL;02 47 50 11 36;alain.chassier(a)live.fr;22217;NULL;
+253552;FX;RLK PRODUCTION;A+;70 COMBEAUFON;NULL;NULL;03 84 92 17 00;NULL;22236;NULL;
+253553;FX;ALEXANDRE ET DAMIEN B;A;78 MAULE;NULL;NULL;01 30 74 73 94;NULL;22246;NULL;
+253554;FX;DOUSSIERE SEBASTIEN;A;48 MEYRUEIS;NULL;NULL;04 66 45 67 95;NULL;22248;NULL;
+253555;FX;SERRURERIE COUDRAY;A;17 MESCHERS;NULL;NULL;05 46 02 57 98;NULL;22252;NULL;
+253556;FX;VERDET;B;25 BESANCON C;NULL;NULL;03 81 80 56 18;NULL;22280;NULL;
+253557;FX;GABARRE JEAN MARC;A;47 FUMEL;NULL;NULL;05 53 40 91 92;NULL;22288;NULL;
+253558;FX;BELLAVIA ROBERT SAS;A+;38 SASSENAGE;NULL;NULL;04 76 27 53 08;NULL;22303;NULL;
+253559;FX;BELLAVIA ROBERT SAS;A+;38 SASSENAGE;NULL;NULL;04 76 27 53 08;bellavia.laurence(a)aliceadsl.fr;22303;NULL;
+253560;FX;ELM PRO-POSE;B;74 LA BALME D;NULL;NULL;04 50 77 73 32;NULL;22305;NULL;
+253561;FX;DROUIN JACK;A;35 RENNES;NULL;NULL;02 99 65 41 22;NULL;22313;NULL;
+253562;FX;BIAS ALU;A;47 BIAS;NULL;NULL;05 53 49 01 50;NULL;22331;NULL;
+253563;FX;BASSAT BRUNO;D;33 COUTRAS;NULL;NULL;05 57 49 10 22;bruno.bassat(a)wanadoo.fr;22337;NULL;
+253564;FX;BASSAT BRUNO;D;33 COUTRAS;NULL;NULL;05 57 49 10 22;NULL;22337;NULL;
+253565;FX;IPM MONDIA;A;01 PONT DE VA;NULL;NULL;03 85 36 80 25;NULL;22343;NULL;
+253566;FX;FAVRE ET FILS;B;73 UGINE;NULL;NULL;04 79 37 25 51;NULL;22344;NULL;
+253567;FX;FERMETUR'IDEAL;A;51 REIMS;NULL;NULL;03 26 08 52 45;NULL;22345;NULL;
+253568;FX;JB STORE;A;79 FRONTENAY;NULL;NULL;05 49 09 51 89;NULL;22362;NULL;
+253569;FX;SISTEMAS DE CORTINAS;B;ES 22 BARCELO;NULL;NULL;349 34 17 75 53;NULL;22368;NULL;
+253570;FX;LEPAGE ET FILS 4438;NULL;08 WARCQ;NULL;NULL;03 24 56 32 71;NULL;22370;NULL;
+253571;FX;ACS M. JEANTILS DOMINIQUE;A;66 LAROQUE;NULL;NULL;09 65 37 91 62;NULL;22376;NULL;
+253572;FX;STF (SOCIETE TECHNIQUE;A+;78 GAMBAIS;NULL;NULL;01 30 44 18 79;NULL;22377;NULL;
+253573;FX;MENUISERIE COMMINGEOISE;NULL;31 SAINT GAUD;NULL;NULL;04 68 33 53 62;NULL;22378;NULL;
+253574;FX;MENUISERIE COMMINGEOISE;NULL;31 SAINT GAUD;NULL;NULL;05 62 00 88 33;NULL;22378;NULL;
+253575;FX;MENUISERIE COMMINGEOISE;NULL;31 SAINT GAUD;NULL;NULL;05 68 41 27 18;NULL;22378;NULL;
+253576;FX;CLERC THIERRY;A;11 CASTELNAUD;NULL;NULL;04 68 23 53 12;sarl.clerc.thierry(a)orange.fr;22404;NULL;
+253577;FX;BRASALU;A;33 Pomerol;NULL;NULL;05 57 84 14 66;NULL;22409;NULL;
+253578;FX;GIRAUD PHILIPPE;A;94 LIMEIL BRE;NULL;NULL;01 45 98 33 14;NULL;22410;NULL;
+253579;FX;UCLAIR;A;CM UNDE;NULL;NULL;NULL;NULL;22415;NULL;
+253580;FX;UCLAIR;A;CM UNDE;NULL;NULL;02 37 22 32 01;uclaircm(a)yahoo.fr;22415;NULL;
+253581;FX;UCLAIR;A;CM UNDE;NULL;NULL;23 72 22 32 01;NULL;22415;NULL;
+253582;FX;SAGRANGE FILS;B;21 BEAUNE;NULL;NULL;03 80 24 00 84;sellerie.tapisserie.sagrange(a)neuf.fr;22419;NULL;
+253583;FX;SAGRANGE FILS;B;21 BEAUNE;NULL;NULL;0 ;NULL;22419;NULL;
+253584;FX;DEBENAIS JEAN MICHEL JMD;A;79 PARTHENAY;NULL;NULL;0 ;debenaisjm(a)cc-parthenay.fr;22420;NULL;
+253585;FX;DIPLEX;A+;38 MOIRANS;NULL;NULL;04 76 35 31 18;NULL;22424;NULL;
+253586;FX;BOUTEILLE BERNARD;A;69 ST SYMPHOR;NULL;NULL;04 78 44 34 21;NULL;22425;NULL;
+253587;FX;DIP STORES D HIVERS;A;69 SAINT LAUR;NULL;NULL;04 72 22 00 75;storedhiver(a)orange.fr;22441;NULL;
+253588;FX;DIP STORES D HIVERS;A;69 SAINT LAUR;NULL;NULL;04 72 22 00 75;NULL;22441;NULL;
+253589;FX;ALUGLACE;A;03 GANNAT;NULL;NULL;04 70 90 14 78;NULL;22449;NULL;
+253590;FX;ALUGLACE;A;03 GANNAT;NULL;NULL;0 ;NULL;22449;NULL;
+253591;FX;IDEAL EQUIPEMENT;NULL;91 ST CYR SOU;NULL;NULL;01 60 81 22 67;idealequip(a)wanadoo.fr;22451;NULL;
+253592;FX;GIRARDET MENUISERIE;A+;25 ARCON;NULL;NULL;03 81 39 15 23;NULL;22454;NULL;
+253593;FX;BASSET JEROME;A;10 BAR SUR AU;NULL;NULL;0 ;jerome.basset691(a)orange.fr;22462;NULL;
+253594;FX;DESIGN VERTIKAL, D.O.O.,;B;SI 6 TRZIN;NULL;NULL;386 15 30 41 02;design.jurhar(a)siol.net;22487;NULL;
+253595;FX;DESIGN VERTIKAL, D.O.O.,;B;SI 6 TRZIN;NULL;NULL;386 15 30 41 02;design.vertikal(a)s5.net;22487;NULL;
+253596;FX;DUTARDRE SAS 5107;A;37 BLERE;NULL;NULL;02 47 30 20 47;NULL;22488;NULL;
+253597;FX;DACHER;A;80 RIVERY;NULL;NULL;03 22 80 07 90;NULL;22517;NULL;
+253598;FX;ALU CONCEPT SYSTEM'S;D;37 MONTBAZON;NULL;NULL;02 47 73 12 52;NULL;22519;NULL;
+253599;FX;PEQUIGNOT SYLVAIN;A;25 NOVILLARD;NULL;NULL;03 81 57 01 18;NULL;22531;NULL;
+253600;FX;EURO SERRURERIE;A;34 SETE;NULL;NULL;04 67 80 20 13;NULL;22543;NULL;
+253601;FX;MIDI ALU;NULL;34 PALAVAS LE;NULL;NULL;04 67 68 20 85;NULL;22545;NULL;
+253602;FX;HORN VERRES ALU;A;57 SAINT JEAN;NULL;NULL;03 87 24 25 06;NULL;22549;NULL;
+253603;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 97 88;cauvergnon(a)garrigues-sa.com;22551;NULL;
+253604;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 34 27 28 11;NULL;22551;NULL;
+253605;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 64 18;plarroche(a)garrigues-sa.com;22551;NULL;
+253606;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 98 52 59;cjosselin(a)garrigues-sa.com;22551;NULL;
+253607;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 98 52 59;NULL;22551;NULL;
+253608;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 34 27 28 10;NULL;22551;NULL;
+253609;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 95 99 91;jpmarieanne(a)garrigues-sa.com;22551;NULL;
+253610;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 64 18;NULL;22551;NULL;
+253611;FX;GARRIGUES SA;A+;47 COLAYRAC S;NULL;NULL;05 53 67 65 68;NULL;22551;NULL;
+253612;FX;MENUISERIE LA GLANEUSE;A;17 LA ROCHELL;NULL;NULL;05 46 00 51 84;NULL;22575;NULL;
+253613;FX;DAVID GILBERT ETS;NULL;83 STE MAXIME;NULL;NULL;04 94 49 00 16;NULL;22584;NULL;
+253614;FX;LES COMPAGNONS METALLIERS;A+;91 CORBEIL ES;NULL;NULL;01 60 88 25 47;cab(a)breuzard.fr;22599;NULL;
+253615;FX;LES COMPAGNONS METALLIERS;A+;91 CORBEIL ES;NULL;NULL;01 60 88 25 47;NULL;22599;NULL;
+253616;FX;LES COMPAGNONS METALLIERS;A+;91 CORBEIL ES;NULL;NULL;01 60 89 02 51;p.heroguelle(a)breuzard.fr;22599;NULL;
+253617;FX;MIROITERIE DE SARCELLES;A;95 SARCELLES;NULL;NULL;01 39 92 17 47;NULL;22600;NULL;
+253618;FX;VAL OISE FERM-SOL. STOR.&FERM.;NULL;93 LIVRY GARG;NULL;NULL;01 43 32 04 95;NULL;22621;NULL;
+253619;FX;BOURGE DANIEL;NULL;14 CONDE SUR;NULL;NULL;02 31 66 90 67;NULL;22633;NULL;
+253620;FX;SODIFF;B;59 MOUVAUX;NULL;NULL;03 21 95 96 97;NULL;22641;NULL;
+253621;FX;C2M ALU;A+;19 MANSAC;NULL;NULL;05 55 85 10 46;NULL;22679;NULL;
+253622;FX;AUSTRAL;D;77 NEMOURS CE;NULL;NULL;01 64 78 54 98;jm.beauland(a)austral.fr;22682;NULL;
+253623;FX;KATVE TVOTANTO OY;NULL;FI RJAVALTA;NULL;NULL;358 25 31 81 20;heikki(a)katve.fi;22694;NULL;
+253624;FX;METALLERIE DE KERPONT;A;56 LANESTER;NULL;NULL;02 97 76 93 94;NULL;22708;NULL;
+253625;FX;CL DIVERS SUD OUEST JF BOMONT;B;18 B;NULL;NULL;02 99 14 83 82;NULL;22735;NULL;
+253626;FX;CL DIVERS SUD OUEST JL AUTHIER;A;17 Rochelle;NULL;NULL;02 99 14 83 80;NULL;22737;NULL;
+253627;FX;COURTOIS CHRISTIAN;A;21 BEAUVRE;NULL;NULL;03 80 24 02 12;NULL;22739;NULL;
+253628;FX;CORBE ET FILS;A;35 RENNES;NULL;NULL;02 99 41 94 83;NULL;22743;NULL;
+253629;FX;GUIHUR MICHEL;A;56 THEIX;NULL;NULL;02 97 68 86 45;NULL;22745;NULL;
+253630;FX;GUILLOT THIERRY;A;18 SAINT SATU;NULL;NULL;02 48 54 16 91;NULL;22773;NULL;
+253631;FX;ALTAPLAST;A;55 BRAS/MEUSE;NULL;NULL;03 29 86 78 60;NULL;22774;NULL;
+253632;FX;SV2M;NULL;72 MULSANNE;NULL;NULL;02 43 78 03 08;NULL;22787;NULL;
+253633;FX;SV2M;NULL;72 MULSANNE;NULL;NULL;02 43 14 55 56;NULL;22787;NULL;
+253634;FX;GROLLA VERRES;A+;73 MOUTIERS C;NULL;NULL;04 79 22 98 25;NULL;22793;NULL;
+253635;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;mickael.oger(a)menuiserie-bourneuf.fr;22796;NULL;
+253636;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;b.talsmat(a)menuiserie-bourneuf.fr;22796;NULL;
+253637;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 07;eddy.galpin(a)menuiserie-bourneuf.fr;22796;NULL;
+253638;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;jm.theau(a)menuiserie-bourneuf.fr;22796;NULL;
+253639;FX;BOURNEUF SOCIETE;D;72 PARIGNE L';NULL;NULL;02 43 50 01 09;NULL;22796;NULL;
+253640;FX;DESHOUX * ne + utiliser voir le Y03353*;D;35 Chapelle-d;NULL;NULL;0 ;NULL;22798;NULL;
+253641;FX;ARTIS;A+;72 SAVIGNE L';NULL;NULL;0 ;artis.verandas(a)wanadoo.fr;22810;NULL;
+253642;FX;ARTIS;A+;72 SAVIGNE L';NULL;NULL;02 43 27 43 79;buell72(a)orange.fr;22810;NULL;
+253643;FX;STEC (STRUCTURES TECHNI-;A;45 ST JEAN LE;NULL;NULL;02 38 66 61 74;NULL;22811;NULL;
+253644;FX;SOPHIA DECORATION;NULL;66 PERPIGNAN;NULL;NULL;04 68 35 02 10;NULL;22814;NULL;
+253645;FX;CHAUVIN DOMINIQUE 4342;NULL;61 BRIOUZE;NULL;NULL;02 33 64 13 46;NULL;22817;NULL;
+253646;FX;SERRURERIE CHALLANDAISE;D;85 CHALLANS;NULL;NULL;02 51 35 11 85;NULL;22825;NULL;
+253647;FX;TALVARD;D;61 ALENCON;NULL;NULL;02 33 27 57 08;NULL;22837;NULL;
+253648;FX;BIGNON LUCIEN 4650;NULL;53 CHAMPEON;NULL;NULL;02 43 00 89 93;NULL;22845;NULL;
+253649;FX;MARTO ISOLATION;A;93 MONTREUIL;NULL;NULL;01 48 70 20 60;NULL;22854;NULL;
+253650;FX;PARIS NORD FERMETURES;A+;95 LOUVRES;NULL;NULL;NULL;NULL;22856;NULL;
+253651;FX;PARIS NORD FERMETURES;A+;95 LOUVRES;NULL;NULL;01 34 68 96 00;NULL;22856;NULL;
+253652;FX;FERMETURES LOURDAISES;A;65 LOURDES;NULL;NULL;09 70 63 23 49;NULL;22867;NULL;
+253653;FX;PESTEL MICHEL;A;27 BERNAY;NULL;NULL;02 32 46 03 81;NULL;22881;NULL;
+253654;FX;STORES CONCEPT SERVICE;A;95 ARGENTEUIL;NULL;NULL;0 45 06 47 18;NULL;22886;NULL;
+253655;FX;STORES CONCEPT SERVICE;A;95 ARGENTEUIL;NULL;NULL;01 45 06 47 18;laurentstore(a)wanadoo.fr;22886;NULL;
+253656;FX;BROCHARD;A;18 BOURGES;NULL;NULL;02 48 67 05 21;NULL;22888;NULL;
+253657;FX;LECLER HENRI;A;78 BONNIERES;NULL;NULL;01 30 42 09 99;NULL;22895;NULL;
+253658;FX;NICOLINO;A;95 ST LEU LA;NULL;NULL;01 39 60 19 27;NULL;22917;NULL;
+253659;FX;SELLERIE SABOLIENNE;A;72 BRULON;NULL;NULL;0 ;NULL;22926;NULL;
+253660;FX;SELLERIE SABOLIENNE;A;72 BRULON;NULL;NULL;0 ;sellerie.sabolienne(a)orange.fr;22926;NULL;
+253661;FX;LACROIX FRERES;B;74 MIEUSSY;NULL;NULL;04 50 43 08 52;NULL;22932;NULL;
+253662;FX;PIEM;A;31 TOULOUSE C;NULL;NULL;05 61 40 22 66;NULL;22945;NULL;
+253663;FX;LA MAISON DU VOLET MARSEILLAIS;A+;13 MARSEILLE;NULL;NULL;04 88 04 02 90;linda.ouverture(a)orange.fr;22947;NULL;
+253664;FX;LA MAISON DU VOLET MARSEILLAIS;A+;13 MARSEILLE;NULL;NULL;04 88 04 02 90;louverture(a)wanadoo.fr;22947;NULL;
+253665;FX;COMPTOIR DES VERRES;B;73 CHAMBERY C;NULL;NULL;04 79 62 54 70;NULL;22951;NULL;
+253666;FX;PROFIL LANGUEDOC;D;11 LEZIGNAN C;NULL;NULL;04 68 27 32 36;NULL;22961;NULL;
+253667;FX;NORD ALU BOIS;A;50 THEVILLE;NULL;NULL;02 33 22 55 67;NULL;22969;NULL;
+253668;FX;ESPACE SOLEIL;D;73 CHALLES LE;NULL;NULL;04 79 72 83 79;NULL;22973;NULL;
+253669;FX;BRUNET;A;33 YVRAC;NULL;NULL;05 56 06 47 22;NULL;22981;NULL;
+253670;FX;ISOFERM STORE - M. AIGU;B;21 CHENOVE;NULL;NULL;03 80 52 48 41;NULL;22983;NULL;
+253671;FX;ROUX ALAIN;A;51 ST MARTIN;NULL;NULL;03 55 03 51 31;roux.alain51(a)orange.fr;22989;NULL;
+253672;FX;RBM (RENOVATION BATIMENT;D;11 PENNAUTIER;NULL;NULL;04 68 47 40 50;NULL;22994;NULL;
+253673;FX;SAJEMA VENT DE L'EST;A+;16 ANGOULEME;NULL;NULL;05 45 95 73 67;NULL;22996;NULL;
+253674;FX;GUERIN MICHEL;A;53 CHATEAU GO;NULL;NULL;02 43 07 00 58;NULL;22999;NULL;
+253675;FX;GAM PROTECTION;A+;93 ROMAINVILL;NULL;NULL;01 41 83 08 40;NULL;23003;NULL;
+253676;FX;J'ISOLE STORES DECO;A;42 ROANNE;NULL;NULL;04 77 71 99 97;NULL;23033;NULL;
+253677;FX;BERGES CLAUDE;A+;24 BOULAZAC;NULL;NULL;05 53 08 97 47;NULL;23037;NULL;
+253678;FX;GUILLOT PAUL;B;58 ARQUIAB;NULL;NULL;03 89 39 65 89;NULL;23038;NULL;
+253679;FX;ANTONIETTI G.;A;25 EXINCOURT;NULL;NULL;03 81 32 13 48;NULL;23040;NULL;
+253680;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 26 49 67 20;menuiserie.betheny(a)pillaud-materiaux.fr;23041;NULL;
+253681;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 23 69 96 28;menuiserie.brasles(a)pillaud-materiaux.fr;23041;NULL;
+253682;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 25 27 39 84;u.barsuraube(a)pillaud-materiaux.fr;23041;NULL;
+253683;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 25 45 12 09;NULL;23041;NULL;
+253684;FX;BIG MAT PILLAUD;A;24 RASLES;NULL;NULL;03 23 69 00 60;NULL;23041;NULL;
+253685;FX;POINT P BRETAGNE MORLAIX;A;29 MORLAIX;NULL;NULL;02 98 63 43 66;NULL;23052;NULL;
+253686;FX;CL DIVERS SUD EST A.COSTE;B;38 L;NULL;NULL;08 10 82 05 10;NULL;23066;NULL;
+253687;FX;STORES LIOGIER;A+;42 ROCHE LA M;NULL;NULL;04 77 33 12 92;NULL;23069;NULL;
+253688;FX;STORES ET FERMETURES DE L ARGO RJ;A;56 ELVEN;NULL;NULL;02 97 53 32 34;NULL;23073;NULL;
+253689;FX;SOCOM INDUSTRIE;A;35 CESSON SEV;NULL;NULL;02 99 32 37 29;NULL;23086;NULL;
+253690;FX;DESJEUNES;A;75 PARIS;NULL;NULL;01 45 44 35 08;NULL;23093;NULL;
+253691;FX;SEINERA JEAN PIERRE;B;73 UGINE CEDE;NULL;NULL;04 79 89 01 50;NULL;23107;NULL;
+253692;FX;BIG MAT BROCARD MATERIAUX;NULL;60 ALLONNE;NULL;NULL;03 44 02 86 10;NULL;23108;NULL;
+253693;FX;JEUDY GUILLOT;A;03 VICHY;NULL;NULL;04 70 59 18 16;NULL;23117;NULL;
+253694;FX;ARENO 4264;NULL;91 AUVERS ST;NULL;NULL;01 69 92 24 13;NULL;23133;NULL;
+253695;FX;CL DIVERS SUD EST ATC BOURGOGNE;A;25 L;NULL;NULL;0 ;NULL;23154;NULL;
+253696;FX;TREBUCHON EQUIP;A;34 PEZENAS;NULL;NULL;04 67 98 04 44;NULL;23155;NULL;
+253697;FX;SERPE (STE ETUDES REALISA;A;75 PARIS;NULL;NULL;01 43 06 42 52;NULL;23171;NULL;
+253698;FX;SERVAIS;A;94 VILLEJUIF;NULL;NULL;01 46 78 86 20;NULL;23172;NULL;
+253699;FX;MILFEN;A;78 ST GERMAIN;NULL;NULL;01 34 51 87 80;NULL;23175;NULL;
+253700;FX;MILFEN;A;78 ST GERMAIN;NULL;NULL;01 34 61 21 31;NULL;23175;NULL;
+253701;FX;GUENEGO J. YVES;NULL;44 SAINT NAZA;NULL;NULL;02 40 19 17 44;NULL;23177;NULL;
+253702;FX;STORES BROUSSAIS;A;94 VILLEJUIF;NULL;NULL;01 53 14 34 89;NULL;23178;NULL;
+253703;FX;TRADITEX;A;63 CLERMONT F;NULL;NULL;04 73 91 70 69;s.hanotin(a)traditex.fr;23190;NULL;
+253704;FX;TRADITEX;A;63 CLERMONT F;NULL;NULL;04 73 91 70 69;NULL;23190;NULL;
+253705;FX;TRADITEX;A;63 CLERMONT F;NULL;NULL;0 ;s.hanotin(a)traditex.fr;23190;NULL;
+253706;FX;COF CENTRE OCCULTATIONS 4909;NULL;45 CHATEAUNEU;NULL;NULL;02 38 46 24 92;NULL;23191;NULL;
+253707;FX;LA MAISON DU STORE;D;17 ROCHEFORT;NULL;NULL;05 46 99 29 48;NULL;23193;NULL;
+253708;FX;MARTIGNY;A;40 BISCAROSSE;NULL;NULL;05 58 78 89 07;NULL;23203;NULL;
+253709;FX;MANOHA;A;66 PERPIGNAN;NULL;NULL;04 68 54 13 54;NULL;23212;NULL;
+253710;FX;PSP 92;A;92 RUEIL MALM;NULL;NULL;01 47 08 24 10;NULL;23214;NULL;
+253711;FX;EUROPE FERMETURES;A;01 CESSY;NULL;NULL;04 50 28 38 40;europefermetures(a)9business.fr;23226;NULL;
+253712;FX;STORES 82;A;82 MONTAUBAN;NULL;NULL;0 ;NULL;23242;NULL;
+253713;FX;MBA (MENUISERIE BOIS ALU);A;28 SAINT REMY;NULL;NULL;02 37 62 10 52;NULL;23255;NULL;
+253714;FX;SPF (STORES PLAFOND FERM.;A;27 DAUBEUF PR;NULL;NULL;02 32 54 41 96;NULL;23259;NULL;
+253715;FX;CRABOL;A;11 ST HILAIRE;NULL;NULL;04 68 79 82 40;NULL;23268;NULL;
+253716;FX;POUJOIS GEORGES;B;74 ANNECY;NULL;NULL;04 50 46 54 50;NULL;23273;NULL;
+253717;FX;PILLA FRANCISCO;A;18 DUN SUR AU;NULL;NULL;02 48 59 58 96;NULL;23277;NULL;
+253718;FX;LEFER DENIS SARL;A;50 BRICQUEBEC;NULL;NULL;02 33 10 07 91;NULL;23279;NULL;
+253719;FX;TOLIERIE ATELIERS;NULL;44 SAINT NAZA;NULL;NULL;02 40 66 82 05;NULL;23280;NULL;
+253720;FX;PERSIENNE DRANCEENNE;A;93 DRANCY;NULL;NULL;01 48 31 37 09;NULL;23288;NULL;
+253721;FX;HAVLUND SOLTEKNIK 4674;A;DK 2690 KARLS;NULL;NULL;45 43 42 14 01;steen(a)havlund.dk;23293;NULL;
+253722;FX;HAVLUND SOLTEKNIK 4674;A;DK 2690 KARLS;NULL;NULL;0 ;NULL;23293;NULL;
+253723;FX;HAVLUND SOLTEKNIK 4674;A;DK 2690 KARLS;NULL;NULL;0 ;LS(a)havlund.dk;23293;NULL;
+253724;FX;DAVID MARC;B;38 BOURGOIN J;NULL;NULL;04 74 93 05 61;NULL;23298;NULL;
+253725;FX;MEZZOLO JEAN MARC 4852;NULL;40 MIMIZAN PL;NULL;NULL;05 58 07 49 79;NULL;23304;NULL;
+253726;FX;MIROITERIE 102 303102;A;92 ANTONY;NULL;NULL;01 46 66 23 22;NULL;23311;NULL;
+253727;FX;MIROITERIE 102 303102;A;92 ANTONY;NULL;NULL;01 46 66 89 88;NULL;23311;NULL;
+253728;FX;MIROITERIE 102 303102;A;92 ANTONY;NULL;NULL;01 46 66 24 02;NULL;23311;NULL;
+253729;FX;MB MICHEL BETTIGNY SERRURERIE;A;92 CLAMART;NULL;NULL;01 46 38 86 19;NULL;23319;NULL;
+253730;FX;JUDLIN FERMETURES;A;75 PARIS;NULL;NULL;01 45 85 48 47;NULL;23329;NULL;
+253731;FX;CMR (CONSTRUCTIONS METAL-;NULL;44 LA CHAPELL;NULL;NULL;02 40 06 77 25;NULL;23331;NULL;
+253732;FX;BRISSONNEAU THIERRY;NULL;44 ST PHILBER;NULL;NULL;02 40 78 84 58;NULL;23338;NULL;
+253733;FX;OMNIUM SECURITE;NULL;30 NIMES;NULL;NULL;04 66 38 06 19;NULL;23356;NULL;
+253734;FX;STORMANIA 4910;A;78 CONFLANS S;NULL;NULL;01 39 72 75 45;NULL;23370;NULL;
+253735;FX;HAUSKNECHT FRANCOISE 4508;NULL;57 PIERREVILL;NULL;NULL;03 87 17 14 13;NULL;23373;NULL;
+253736;FX;BOIS ESPACE;B;73 ALBERTVILL;NULL;NULL;04 79 37 77 37;NULL;23377;NULL;
+253737;FX;OUEST MENUISERIE - JOS PERON;A+;29 PONT L'ABB;NULL;NULL;02 98 75 03 72;NULL;23382;NULL;
+253738;FX;OUEST MENUISERIE - JOS PERON;A+;29 PONT L'ABB;NULL;NULL;02 98 66 15 51;NULL;23382;NULL;
+253739;FX;ATOUT CARREAU;D;12 MILLAU;NULL;NULL;05 65 61 36 62;NULL;23383;NULL;
+253740;FX;NEGRO;A+;90 BAVILLIERS;NULL;NULL;03 84 55 05 79;NULL;23389;NULL;
+253741;FX;GINISTY ET CIE;B;74 THONON LES;NULL;NULL;04 50 71 82 87;NULL;23398;NULL;
+253742;FX;SAMSE EMBRUN;A;05 EMBRUN;NULL;NULL;04 92 43 46 44;NULL;23418;NULL;
+253743;FX;MANCEAU DENIS;A;49 ETRICHE;NULL;NULL;02 41 42 60 55;NULL;23420;NULL;
+253744;FX;MONVOISIN;A+;35 GOVEN;NULL;NULL;02 99 05 93 97;NULL;23421;NULL;
+253745;FX;POINT P BRETAGNE DINAN;A;22 DINAN;NULL;NULL;02 96 39 60 74;NULL;23422;NULL;
+253746;FX;BATI DECOR 2B;NULL;20 BIGUGLIA;NULL;NULL;04 95 33 40 47;NULL;23448;NULL;
+253747;FX;ARNAULT DIFFUSION;A;86 MIGNE AUXA;NULL;NULL;05 49 18 28 60;isabelle(a)stores.rideaux.com;23456;NULL;
+253748;FX;ARNAULT DIFFUSION;A;86 MIGNE AUXA;NULL;NULL;05 49 18 28 60;NULL;23456;NULL;
+253749;FX;LUYTON PATRICK;B;26 SAINT SORL;NULL;NULL;04 75 31 60 07;NULL;23458;NULL;
+253750;FX;FUNFROCK PASCAL;NULL;67 MARLENHEIM;NULL;NULL;03 88 87 79 80;NULL;23462;NULL;
+253751;FX;AIRIAU SERRURERIE;A;13 LA CIOTAT;NULL;NULL;04 42 08 97 85;NULL;23473;NULL;
+253752;FX;SYTAG SA;NULL;CH 1219 GENEV;NULL;NULL;0 ;NULL;23483;NULL;
+253753;FX;DA SILVA FERNAND;A;32 ISLE JOURD;NULL;NULL;05 62 07 28 75;NULL;23484;NULL;
+253754;FX;GREMMEL J. ET CIE;A+;67 ESCHAU;NULL;NULL;03 88 68 50 56;NULL;23526;NULL;
+253755;FX;WEINSTEIN ET FILS;A+;67 SARRE UNIO;NULL;NULL;03 88 00 30 44;NULL;23527;NULL;
+253756;FX;THERMIDOR;NULL;22 HENON;NULL;NULL;02 96 73 50 29;NULL;23530;NULL;
+253757;FX;BOURDIN;A;49 VARENNES S;NULL;NULL;02 41 51 49 90;NULL;23538;NULL;
+253758;FX;TONY SERVICES SABA ANTONIO;A+;38 ROCHETOIRI;NULL;NULL;04 74 18 01 90;NULL;23539;NULL;
+253759;FX;SERRURERIE NEBATI;A;78 FONTENAY L;NULL;NULL;01 30 58 38 50;NULL;23549;NULL;
+253760;FX;MGM ALU MENUISERIE GALE 419;NULL;13 AUBAGNE;NULL;NULL;04 42 18 72 31;NULL;23551;NULL;
+253761;FX;TOURAINE MIROITERIE;A;37 TOURS;NULL;NULL;02 47 37 76 90;NULL;23555;NULL;
+253762;FX;LUMALE;A;40 MONT DE MA;NULL;NULL;05 58 75 08 94;NULL;23556;NULL;
+253763;FX;LE QUERE ANDRE;A;21 CHENOVE;NULL;NULL;03 80 58 85 08;NULL;23565;NULL;
+253764;FX;SAGA AMENAGEMENTS RAYMOND MICH;A;38 CHAPAREILL;NULL;NULL;04 76 45 20 08;NULL;23567;NULL;
+253765;FX;SAGA AMENAGEMENTS RAYMOND MICH;A;38 CHAPAREILL;NULL;NULL;04 76 45 20 08;mic.co.raymond(a)wanadoo.fr;23567;NULL;
+253766;FX;ABAC SLC STORES;NULL;75 PARIS;NULL;NULL;01 60 46 23 19;NULL;23585;NULL;
+253767;FX;TOUTBOIS AGENCEMENT;A;69 DECINES CH;NULL;NULL;04 78 49 45 97;NULL;23608;NULL;
+253768;FX;TERRIER J. CLAUDE;NULL;61 MESSEI;NULL;NULL;02 33 96 00 40;NULL;23613;NULL;
+253769;FX;CLOMEN;A;81 ALBI;NULL;NULL;05 63 38 13 65;NULL;23620;NULL;
+253770;FX;GIRAUD BARDOUX;NULL;76 OISSEL;NULL;NULL;02 32 91 31 98;achat(a)giraud-bardoux.fr;23625;NULL;
+253771;FX;HABITAT ET STORES ROGER;B;38 BOURGOIN J;NULL;NULL;04 74 28 64 76;NULL;23646;NULL;
+253772;FX;CHAUSSON TRIALIS SUD EST;NULL;84 VALREAS;NULL;NULL;04 90 37 44 29;NULL;23648;NULL;
+253773;FX;CONFORT ISOLATION;B;21 SENNECEY L;NULL;NULL;03 80 47 07 19;NULL;23649;NULL;
+253774;FX;GERBAT;D;27 Beuzeville;NULL;NULL;02 31 63 63 60;NULL;23655;NULL;
+253775;FX;INDUSTRIAS BEC;B;ES 50 ARENYS;NULL;NULL;349 37 92 49 22;bec(a)bec.es;23664;NULL;
+253776;FX;INDUSTRIAS BEC;B;ES 50 ARENYS;NULL;NULL;349 32 25 06 85;killian(a)bec.es;23664;NULL;
+253777;FX;INDUSTRIAS BEC;B;ES 50 ARENYS;NULL;NULL;349 37 92 49 22;NULL;23664;NULL;
+253778;FX;LOUVIER;A;66 LAROQUE-DE;NULL;NULL;04 68 89 67 74;NULL;23677;NULL;
+253779;FX;THALMANN;D;69 MARCY L'ET;NULL;NULL;04 78 87 82 94;NULL;23678;NULL;
+253780;FX;CL DIVERS SUD EST ATC LANGUEDOC;A;30 L.;NULL;NULL;0 ;NULL;23681;NULL;
+253781;FX;VERRE CLAIR;B;60 SAINT MAXI;NULL;NULL;03 44 64 40 64;NULL;23686;NULL;
+253782;FX;ESPACE LE GOFF;A;56 CRAC'H;NULL;NULL;02 97 50 74 42;NULL;23689;NULL;
+253783;FX;FOURNIER;D;91 MONTGERON;NULL;NULL;01 69 52 37 72;stefournier91(a)orange.fr;23702;NULL;
+253784;FX;BERVAS;D;29 PLOUESCAT;NULL;NULL;02 98 61 93 35;NULL;23716;NULL;
+253785;FX;LENOIR METALLERIE;A+;69 VILLEURBAN;NULL;NULL;04 72 97 04 04;jfgauthier(a)lenoirmetallerie.fr;23719;NULL;
+253786;FX;LENOIR METALLERIE;A+;69 VILLEURBAN;NULL;NULL;04 72 97 04 04;NULL;23719;NULL;
+253787;FX;PXR;D;77 SAMOREAU;NULL;NULL;01 64 24 54 07;NULL;23727;NULL;
+253788;FX;SAMSE DIGNE;A;04 DIGNE;NULL;NULL;04 92 32 25 71;NULL;23760;NULL;
+253789;FX;COULON ET FILS;D;75 PARIS;NULL;NULL;01 47 20 10 33;NULL;23767;NULL;
+253790;FX;LE BALC'H VERANDAS 4462;NULL;22 PLOUMAGOAR;NULL;NULL;02 96 44 03 91;NULL;23781;NULL;
+253791;FX;ALU 2000;A;82 CASTELSAGR;NULL;NULL;05 63 95 69 73;NULL;23782;NULL;
+253792;FX;BOUCHET MARIE ROSE - DECO 2000;A+;58 NEVERS;NULL;NULL;03 86 37 69 12;NULL;23789;NULL;
+253793;FX;CRC COMPANHIA LDA;D;PT 0-071 ALDE;NULL;NULL;3512 12 10 07 62;NULL;23796;NULL;
+253794;FX;CRC COMPANHIA LDA;D;PT 0-071 ALDE;NULL;NULL;3512 13 62 12 65;NULL;23796;NULL;
+253795;FX;CRC COMPANHIA LDA;D;PT 0-071 ALDE;NULL;NULL;3512 13 62 12 65;carlosjosecosta(a)crc.pt;23796;NULL;
+253796;FX;MARINIER MAT. BOURG S/AND;NULL;84 VALREAS CE;NULL;NULL;04 75 54 53 99;NULL;23800;NULL;
+253797;FX;STORE DES ILES;A;MU TRE BORNES;NULL;NULL;23 04 24 35 53;sdesil(a)intnet.mu;23813;NULL;
+253798;FX;BAIE OUEST LORIENT;D;56 LORIENT;NULL;NULL;02 97 64 61 06;NULL;23819;NULL;
+253799;FX;NEW DECOR;A;76 LE HAVRE;NULL;NULL;02 35 28 14 74;NULL;23820;NULL;
+253800;FX;BAIE OUEST VANNES SAS PILORGER;D;56 PLOEREN;NULL;NULL;02 97 46 58 92;baie.ouest.vannes(a)wanadoo.fr;23821;NULL;
+253801;FX;CHAUSSON TRIALIS CARPENTRAS;NULL;84 CARPENTRAS;NULL;NULL;04 90 67 36 29;NULL;23838;NULL;
+253802;FX;AUDOUIN;A;61 ALENCON;NULL;NULL;02 33 29 25 43;NULL;23852;NULL;
+253803;FX;GOHON ALAIN;A;14 LISIEUX;NULL;NULL;02 31 62 05 92;NULL;23873;NULL;
+253804;FX;FABRIPOSE;A;72 ARCONNAY;NULL;NULL;02 33 29 46 02;fabripose(a)wanadoo.fr;23875;NULL;
+253805;FX;TEXIA 4812;A;64 PAU;NULL;NULL;0 ;NULL;23879;NULL;
+253806;FX;ALPHA BAIE;A+;31 TOULOUSE;NULL;NULL;05 61 62 01 81;NULL;23888;NULL;
+253807;FX;ALLAIRE PHILIPPE;A;44 ST BREVIN;NULL;NULL;02 40 39 13 43;NULL;23890;NULL;
+253808;FX;TONDOUX NICOLAS;D;35 LUITRE;NULL;NULL;02 99 97 94 51;NULL;23892;NULL;
+253809;FX;MIROITERIE CANNOISE MC;A;06 MOUGINS;NULL;NULL;04 92 92 16 17;NULL;23898;NULL;
+253810;FX;SMRB (STE MENUISERIE;A;45 SULLY SUR;NULL;NULL;02 38 36 29 04;NULL;23899;NULL;
+253811;FX;MAISON CONFORT 4386;A;MA ABLANCA;NULL;NULL;212 22 39 41 40;NULL;23906;NULL;
+253812;FX;NUVOLI PIERRE -MAISON ISOLATION;B;20 BASTIA;NULL;NULL;04 95 31 18 59;NULL;23907;NULL;
+253813;FX;ESPACE MENUISERIE ET;A;37 NAZELLES N;NULL;NULL;02 47 57 46 65;NULL;23909;NULL;
+253814;FX;GEDIMAT UNIBOIS;B;70 LURE;NULL;NULL;03 84 62 72 28;NULL;23910;NULL;
+253815;FX;SICARD VERANDAS;A+;37 TOURS;NULL;NULL;02 47 56 77 95;NULL;23916;NULL;
+253816;FX;POINT P MERIDIONALE BEZIERS;A+;34 BEZIERS CE;NULL;NULL;04 67 49 76 49;NULL;23937;NULL;
+253817;FX;POINT P MERIDIONALE BEZIERS;A+;34 BEZIERS CE;NULL;NULL;05 65 46 12 22;NULL;23937;NULL;
+253818;FX;POINT P MERIDIONALE BEZIERS;A+;34 BEZIERS CE;NULL;NULL;05 34 01 38 20;NULL;23937;NULL;
+253819;FX;POINT P MERIDIONALE CARCASSONN;A;11 CARCASSONN;NULL;NULL;04 68 72 54 81;NULL;23938;NULL;
+253820;FX;POINT P MERIDIONALE PERPIGNAN;A;34 BEZIERS CE;NULL;NULL;04 68 55 70 69;NULL;23940;NULL;
+253821;FX;POINT P MERIDIONALE NIMES;A;34 BEZIERS CE;NULL;NULL;04 66 04 81 99;NULL;23942;NULL;
+253822;FX;MEGNIEN SIMA NIORT;NULL;79 NIORT;NULL;NULL;05 49 17 22 29;NULL;23951;NULL;
+253823;FX;MEGNIEN SIMA LUCON;NULL;85 LUCON;NULL;NULL;02 51 56 81 81;NULL;23952;NULL;
+253824;FX;CHEVALIER;A+;21 POUILLY EN;NULL;NULL;03 80 90 88 44;contact(a)chevalier-sa.fr;23956;NULL;
+253825;FX;AREA (STE DES AUTOROUTES;A;69 BRON CEDEX;NULL;NULL;0 ;NULL;23969;NULL;
+253826;FX;TROUILLARD POINT P PDL THOUARS;A;79 THOUARS;NULL;NULL;05 49 96 36 89;NULL;23979;NULL;
+253827;FX;RIDONET LORRAINE;A+;54 POMPEY;NULL;NULL;03 83 24 37 84;ridonet(a)orange.fr;23991;NULL;
+253828;FX;AD DIFFUSION;A;77 SAINT PIER;NULL;NULL;01 64 78 51 59;NULL;23993;NULL;
+253829;FX;AD DIFFUSION;A;77 SAINT PIER;NULL;NULL;01 64 22 37 98;NULL;23993;NULL;
+253830;FX;COSVAL;NULL;13 SALON DE P;NULL;NULL;04 90 56 70 40;NULL;23995;NULL;
+253831;FX;ROTGE FRANCOIS;A;83 FREJUS;NULL;NULL;04 94 69 92 61;rotgepvm(a)live.fr;23998;NULL;
+253832;FX;CHAUSSON TRIALIS MONTELIMAR;NULL;84 VALREAS CE;NULL;NULL;04 75 51 35 78;NULL;24001;NULL;
+253833;FX;POYADE STORES;NULL;03 VICHY;NULL;NULL;04 70 97 63 71;NULL;24015;NULL;
+253834;FX;BILDSTEIN JEAN JACQUES;A;68 HATTSTATT;NULL;NULL;09 71 70 40 56;jean-jacques.bildstein(a)wanadoo.fr;24016;NULL;
+253835;FX;ROTHERMEL CHARLES SARL;A;57 AMNEVILLE;NULL;NULL;03 87 72 07 29;NULL;24019;NULL;
+253836;FX;ROTHERMEL CHARLES SARL;A;57 AMNEVILLE;NULL;NULL;03 87 71 82 06;NULL;24019;NULL;
+253837;FX;ROTHERMEL CHARLES SARL;A;57 AMNEVILLE;NULL;NULL;03 87 71 82 06;virginie.sar(a)rothermel.fr;24019;NULL;
+253838;FX;GEDIMAT GARNIER;A;72 ST PATERNE;NULL;NULL;02 33 27 34 77;NULL;24022;NULL;
+253839;FX;IRIS 4507;NULL;10 ST THIBAUL;NULL;NULL;01 41 72 06 29;NULL;24025;NULL;
+253840;FX;GLANTENAY;D;21 VENAREY LE;NULL;NULL;03 80 96 19 37;entreprise.glantenay(a)orange.fr;24037;NULL;
+253841;FX;CHAMPIGNY FERMETURES;A;94 CHAMPIGNY;NULL;NULL;01 45 16 91 56;NULL;24043;NULL;
+253842;FX;LESSAGE DANIEL;NULL;72 SAINT SATU;NULL;NULL;02 43 25 65 46;NULL;24055;NULL;
+253843;FX;SUD OUEST CLOTURES 2;A;11 NARBONNE C;NULL;NULL;04 68 41 11 23;NULL;24056;NULL;
+253844;FX;RICARD GILBERT;A;81 MAZAMET;NULL;NULL;05 63 98 98 87;NULL;24065;NULL;
+253845;FX;AVH AMELIORATION DE VOTRE;A;89 TURNY;NULL;NULL;09 71 70 14 82;contact(a)avh89.fr;24068;NULL;
+253846;FX;REISSER KURT;NULL;DE 6829 LANDA;NULL;NULL;49 63 41 35 84;NULL;24077;NULL;
+253847;FX;OUEST OUVERTURES;A;35 FOUGERES;NULL;NULL;02 99 99 50 91;NULL;24078;NULL;
+253848;FX;STORES ALPAGO;A;24 EYMET;NULL;NULL;05 53 23 75 95;NULL;24080;NULL;
+253849;FX;VRIGNAUD VEILLET NELLY;A;17 SAINTES;NULL;NULL;05 46 92 03 72;tonyveillet(a)orange.fr;24085;NULL;
+253850;FX;COMASUD SICOBOIS;A+;13 MARSEILLE;NULL;NULL;04 94 75 69 69;NULL;24088;NULL;
+253851;FX;REZIG MICHEL;A;95 SARCELLES;NULL;NULL;01 34 38 07 30;NULL;24095;NULL;
+253852;FX;STORES 35;A;35 DOMLOUP;NULL;NULL;02 99 37 47 66;NULL;24111;NULL;
+253853;FX;FRANCE FERMETURES;A;77 VILLEMER;NULL;NULL;01 69 09 18 85;NULL;24112;NULL;
+253854;FX;FRANCE FERMETURES;A;77 VILLEMER;NULL;NULL;01 64 24 90 25;NULL;24112;NULL;
+253855;FX;CL DIVERS SUD EST F.LEBEL;A;73 L.;NULL;NULL;02 99 14 86 44;NULL;24114;NULL;
+253856;FX;SEGRIM;A;13 LES PENNES;NULL;NULL;04 91 51 28 20;NULL;24118;NULL;
+253857;FX;SODIMAF (STE DIFFUSION;A;77 CRECY LA C;NULL;NULL;01 64 63 88 37;NULL;24128;NULL;
+253858;FX;FRANCE FERMETURES SAS;A+;74 MEYTHET;NULL;NULL;04 50 52 83 21;NULL;24132;NULL;
+253859;FX;RHEIN CHRISTIAN;B;63 CLERMONT F;NULL;NULL;04 73 92 45 60;NULL;24135;NULL;
+253860;FX;HERTRICH FRANCOIS;NULL;83 ROQUEBRUNE;NULL;NULL;04 94 44 05 63;NULL;24146;NULL;
+253861;FX;JLC 45;D;45 ORLEANS CE;NULL;NULL;02 38 63 88 37;NULL;24148;NULL;
+253862;FX;JLC 45;D;45 ORLEANS CE;NULL;NULL;02 38 64 09 47;NULL;24148;NULL;
+253863;FX;CASTOR DEVELOPPEMENT 4675;NULL;94 SAINT MAUR;NULL;NULL;01 48 89 00 05;NULL;24179;NULL;
+253864;FX;TROUILLARD POINT P PDL AIRVAULT;A;79 AIRVAULT;NULL;NULL;05 49 70 80 23;NULL;24188;NULL;
+253865;FX;LE CHEVILLER H.;B;97 KOUROU CED;NULL;NULL;05 94 32 07 74;llechevil(a)wanadoo.fr;24192;NULL;
+253866;FX;LVI BOURGOGNE STE NVELLE;A;21 POUILLY EN;NULL;NULL;03 80 90 74 70;NULL;24202;NULL;
+253867;FX;MIROITERIE SERVICES;A;56 AURAY;NULL;NULL;02 97 24 80 06;NULL;24205;NULL;
+253868;FX;DT ALU;A;94 VALENTON;NULL;NULL;01 43 89 41 25;NULL;24208;NULL;
+253869;FX;BAR ALU;A;13 MARSEILLE;NULL;NULL;04 91 94 25 07;NULL;24213;NULL;
+253870;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;3512 32 76 77 79;carina.francisco(a)martifer.com;24215;NULL;
+253871;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;05 56 24 07 27;NULL;24215;NULL;
+253872;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;334 37 85 13 65;sidonie.marvalin(a)heytens.be;24215;NULL;
+253873;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;stephanethesin(a)numrs.com;24215;NULL;
+253874;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;36 83 54 60 13;NULL;24215;NULL;
+253875;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;225 21 24 62 14;ludovic.joubert(a)ads-westafrica.com;24215;NULL;
+253876;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;412 19 43 40 08;NULL;24215;NULL;
+253877;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;NULL;NULL;24215;NULL;
+253878;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;01 44 08 62 02;tpoletti(a)viguier.com;24215;NULL;
+253879;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;glpiat(a)ballastinternational.com;24215;NULL;
+253880;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;3902 90 37 65 50;raffaele.rome(a)metalsigma.it;24215;NULL;
+253881;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;kurt.vanmeerhaeghe(a)kyotecgroup.com;24215;NULL;
+253882;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;01 49 97 92 32;damien.cochet(a)kyotecgroup.fr;24215;NULL;
+253883;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;04 78 08 86 32;rchevallard(a)2jpc.com;24215;NULL;
+253884;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;332 40 51 11 43;erbosmia(a)aol.com;24215;NULL;
+253885;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;l.basseville(a)free.fr;24215;NULL;
+253886;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;01 40 86 55 33;NULL;24215;NULL;
+253887;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;morganequeralto(a)numrs.com;24215;NULL;
+253888;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;estelle(a)ikedeco.com;24215;NULL;
+253889;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;NULL;24215;NULL;
+253890;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;mohamed.ghaleb(a)club-internet.fr;24215;NULL;
+253891;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;04 50 96 70 91;NULL;24215;NULL;
+253892;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;becht(a)mbm-konstruktionen.de;24215;NULL;
+253893;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;santos.urtzi(a)gmail.com;24215;NULL;
+253894;FX;CL DIVERS EXPORT avec tva;B;45 CHECY;NULL;NULL;0 ;richardd(a)netvision.net.il;24215;NULL;
+253895;FX;EQUIP'HABITAT;A;87 LIMOGES;NULL;NULL;05 55 01 25 22;NULL;24218;NULL;
+253896;FX;LETORDS THIERRRY;A;94 ST MAUR DE;NULL;NULL;01 48 83 00 05;NULL;24231;NULL;
+253897;FX;VMM VERANDAS MENUIS MONTGAILL;A+;65 TARBES;NULL;NULL;05 62 34 00 05;NULL;24236;NULL;
+253898;FX;MARSOLLIER DIDIER;A;35 Rennes;NULL;NULL;02 99 44 15 94;d.marsollier(a)free.fr;24245;NULL;
+253899;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 34;courtry(a)afd-verandas.com;24252;NULL;
+253900;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 33;NULL;24252;NULL;
+253901;FX;AFD;D;36 LA CHATRE;NULL;NULL;04 76 24 16 23;NULL;24252;NULL;
+253902;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 58 47;courtry(a)afd-verandas.com;24252;NULL;
+253903;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 34;be(a)afd-verandas.com;24252;NULL;
+253904;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 58 47;NULL;24252;NULL;
+253905;FX;AFD;D;36 LA CHATRE;NULL;NULL;02 54 48 61 58;lachatre(a)afd-verandas.com;24252;NULL;
+253906;FX;AFD;D;36 LA CHATRE;NULL;NULL;01 64 21 88 41;barfuss_mederic(a)afd-verandas.com;24252;NULL;
+253907;FX;AFD;D;36 LA CHATRE;NULL;NULL;02á54á48á4182;clement.aupart(a)afd-verandas.com;24252;NULL;
+253908;FX;AFD;D;36 LA CHATRE;NULL;NULL;02 54 48 61 58;NULL;24252;NULL;
+253909;FX;DA SILVA ANTONIO FIB FERMETURE;A;91 MORANGIS;NULL;NULL;01á60129678;antonio.da-silva0361(a)orange.fr;24255;NULL;
+253910;FX;ROBINEAU;A;37 ST NICOLAS;NULL;NULL;02 47 97 47 30;NULL;24258;NULL;
+253911;FX;BOUCHER FABRICE;A;93 Aubervilli;NULL;NULL;01 69 90 10 06;zine.93(a)wanadoo.fr;24260;NULL;
+253912;FX;SAMSE ALBERTVILLE;A;73 ALBERTVILL;NULL;NULL;04 79 37 18 47;NULL;24262;NULL;
+253913;FX;SUREAU;NULL;89 MAGNY;NULL;NULL;03 86 33 02 10;NULL;24265;NULL;
+253914;FX;ALU SPINACE;A+;38 LE TOUVET;NULL;NULL;04 76 08 40 28;NULL;24283;NULL;
+253915;FX;LEMOINE DECORATION;A;41 MONTRICHAR;NULL;NULL;02 54 32 24 27;NULL;24284;NULL;
+253916;FX;QUINETTE YVON;D;50 SAINT LO;NULL;NULL;02 33 55 81 21;NULL;24296;NULL;
+253917;FX;EXPLOITATION FRANCE ENTRETIEN;A;13 MARSEILLE;NULL;NULL;04 91 54 07 80;francentretien(a)wanadoo.fr;24305;NULL;
+253918;FX;EXPLOITATION FRANCE ENTRETIEN;A;13 MARSEILLE;NULL;NULL;04 91 54 07 80;NULL;24305;NULL;
+253919;FX;COUSSINS MATELAS;B;38 ST CLAIR D;NULL;NULL;04 74 97 86 92;NULL;24308;NULL;
+253920;FX;OMBRE PINGEOT;A;86 CHATELLERA;NULL;NULL;05 49 23 19 03;NULL;24314;NULL;
+253921;FX;AMB;A;50 BOURGUENOL;NULL;NULL;02 33 90 04 12;NULL;24321;NULL;
+253922;FX;MELIN MATERIAUX LA CHATRE;A;36 LA CHATRE;NULL;NULL;02 54 06 09 63;NULL;24327;NULL;
+253923;FX;LES VERRERIES DU CENTRE;A;03 MONTLUCON;NULL;NULL;04 70 28 17 57;NULL;24330;NULL;
+253924;FX;LES VERRERIES DU CENTRE;A;03 MONTLUCON;NULL;NULL;0 ;NULL;24330;NULL;
+253925;FX;GUILLOT ELECT BATIMENT;B;38 GRENOBLE;NULL;NULL;04 76 49 42 61;NULL;24335;NULL;
+253926;FX;CHAUSSON TRIALIS BOLLENE;NULL;84 BOLLENE;NULL;NULL;04 90 30 05 14;NULL;24337;NULL;
+253927;FX;RETE SERGE;A;35 LOUVIGNE D;NULL;NULL;02 99 98 19 32;NULL;24338;NULL;
+253928;FX;STORES OTTAN;A;78 TRAPPES;NULL;NULL;01 30 62 24 09;NULL;24340;NULL;
+253929;FX;ALLIX DOMINIQUE;NULL;14 CABOURG;NULL;NULL;02 31 24 79 12;NULL;24358;NULL;
+253930;FX;THOMAS REMI;A;45 LA FERTE S;NULL;NULL;0 ;thomas-remi(a)orange.fr;24382;NULL;
+253931;FX;SNM ALU INDUSTRIE;A;88 LA BRESSE;NULL;NULL;03 29 25 29 66;NULL;24384;NULL;
+253932;FX;SM BOIS;A;77 CLAYE SOUI;NULL;NULL;01 60 26 03 94;NULL;24386;NULL;
+253933;FX;LOGIS CONFORT;A;35 BETTON;NULL;NULL;02 99 55 16 90;NULL;24397;NULL;
+253934;FX;LOGIS CONFORT;A;35 BETTON;NULL;NULL;02 99 55 37 44;logisconfort(a)orange.fr;24397;NULL;
+253935;FX;DE PHILIPPE BERNARD;A;89 MIGENNES;NULL;NULL;08 25 18 69 93;NULL;24404;NULL;
+253936;FX;BAUDRY - DIVISION 2;A;77 SERVON;NULL;NULL;01 60 62 60 29;NULL;24416;NULL;
+253937;FX;DELEVOYE L'OMBRE SUR BAIE;A;31 PORTET SUR;NULL;NULL;05 61 76 05 60;NULL;24424;NULL;
+253938;FX;THOMAS;A;44 ST NAZAIRE;NULL;NULL;02 40 22 46 11;NULL;24426;NULL;
+253939;FX;SERVICE ATERM;A;45 ORLEANS;NULL;NULL;02 38 62 84 09;NULL;24431;NULL;
+253940;FX;CHAMBON;A;71 SEMUR EN B;NULL;NULL;03 85 25 43 57;NULL;24438;NULL;
+253941;FX;PICHARD;A;45 MARIGNY LE;NULL;NULL;02 38 75 14 85;NULL;24442;NULL;
+253942;FX;CLEMENT ALAIN;A;77 VILLEPARIS;NULL;NULL;01 64 67 20 41;NULL;24447;NULL;
+253943;FX;HAINCOURT BERTRAND;NULL;61 LE THEIL;NULL;NULL;02 37 49 77 40;NULL;24450;NULL;
+253944;FX;ILE DE FRANCE FERMETURE 4489;NULL;78 VERNOUILLE;NULL;NULL;01 39 71 68 62;NULL;24464;NULL;
+253945;FX;CARRE MARCEL;A+;38 PONT DE BE;NULL;NULL;04 76 37 04 90;NULL;24467;NULL;
+253946;FX;ISOLA 2000 4833;NULL;93 LE RAINCY;NULL;NULL;01 43 02 73 92;NULL;24469;NULL;
+253947;FX;CHAUSSON TRIALIS ST MITRE;NULL;13 SAINT MITR;NULL;NULL;04 42 80 93 33;NULL;24484;NULL;
+253948;FX;DENJEAN;A;69 ST MARTIN;NULL;NULL;04 78 48 51 72;NULL;24491;NULL;
+253949;FX;DENJEAN;A;69 ST MARTIN;NULL;NULL;04 78 48 51 72;ets.denjean(a)wanadoo.fr;24491;NULL;
+253950;FX;MOTIN JACKY- STORES DUBOIS;NULL;50 SAINT LO;NULL;NULL;02 33 05 30 89;NULL;24493;NULL;
+253951;FX;DECORA STORES EURL;D;31 RAMONVILLE;NULL;NULL;05 61 75 06 80;NULL;24500;NULL;
+253952;FX;CL DIVERS SUD OUEST J GIRAUD;A;32 Auch;NULL;NULL;02 99 14 83 79;NULL;24502;NULL;
+253953;FX;ALU BORMES STORES;A;83 BORMES LES;NULL;NULL;0 ;alubormestores(a)wanadoo.fr;24507;NULL;
+253954;FX;RESEAU PRO VACHERAND;NULL;02 SOISSONS C;NULL;NULL;03 23 73 09 29;NULL;24515;NULL;
+253955;FX;JPA ENTRETIEN;A+;38 L'ALPE D'H;NULL;NULL;04 76 80 63 01;NULL;24517;NULL;
+253956;FX;BOHEMIAFLEX CS SRO;D;CZ 05 OPAVA 5;NULL;NULL;4205 53 73 19 94;ivana(a)bohemiaflex-cs.cz;24523;NULL;
+253957;FX;BOHEMIAFLEX CS SRO;D;CZ 05 OPAVA 5;NULL;NULL;4205 53 73 19 94;NULL;24523;NULL;
+253958;FX;FASS;D;35 SAINT GREG;NULL;NULL;08 11 38 96 47;fass35(a)gmail.com;24526;NULL;
+253959;FX;CORNET MIROITERIE RJ;NULL;13 MARSEILLE;NULL;NULL;04 91 35 54 32;NULL;24531;NULL;
+253960;FX;LEMOINE STORE DECO;A+;02 SAINT-QUEN;NULL;NULL;03 23 67 81 40;NULL;24549;NULL;
+253961;FX;VGSM VOLETS GRILLES;D;92 CHATENAY M;NULL;NULL;01 47 02 36 26;NULL;24554;NULL;
+253962;FX;RHONIBAT;D;69 BRIGNAIS;NULL;NULL;04 78 05 41 66;secretariat(a)rhonibat.com;24567;NULL;
+253963;FX;RHONIBAT;D;69 BRIGNAIS;NULL;NULL;04 78 05 41 66;NULL;24567;NULL;
+253964;FX;TAPISSERIE LONGEAU;A;86 VOUILLE;NULL;NULL;05 49 51 79 14;NULL;24573;NULL;
+253965;FX;MVB (MIROITERIE VITRERIE;A+;27 BERNAY;NULL;NULL;02 32 46 59 10;NULL;24583;NULL;
+253966;FX;FMBA (FRANCHOMME 4055;NULL;62 COURCELLES;NULL;NULL;16 21 77 88 99;NULL;24602;NULL;
+253967;FX;ISOMAT;A;67 BERGBIETEN;NULL;NULL;0 ;NULL;24604;NULL;
+253968;FX;EURAL TECH 4771;A;06 NICE;NULL;NULL;04 93 26 31 11;NULL;24630;NULL;
+253969;FX;AEF (AGENCE EUROPEENNE;A+;75 PARIS;NULL;NULL;01 45 42 00 10;NULL;24632;NULL;
+253970;FX;MEGNIEN SNBM CHANTELOUP;NULL;86 VOUNEUIL S;NULL;NULL;0 ;NULL;24644;NULL;
+253971;FX;ATELIER DU BOIS 302940;NULL;44 ARTHON EN;NULL;NULL;02 40 21 25 01;NULL;24649;NULL;
+253972;FX;AUCLAIR HERVE;D;01 BEYNOST;NULL;NULL;04 78 06 42 87;entreprise-auclair(a)sfr.fr;24653;NULL;
+253973;FX;BROSOLO PIERRE EDOUARD;D;56 QUIBERON;NULL;NULL;02 97 50 42 75;NULL;24660;NULL;
+253974;FX;ATALU SAS;A;67 ERSTEIN CX;NULL;NULL;03 88 59 81 10;NULL;24661;NULL;
+253975;FX;BIG MAT MOUYSSET SAMABOIS;A;12 MILLAU;NULL;NULL;05 65 61 38 62;NULL;24665;NULL;
+253976;FX;CL DIVERS OUEST D. JEANNE;NULL;14 R;NULL;NULL;02 99 14 63 08;NULL;24670;NULL;
+253977;FX;SOFRADI;D;44 TREILLIERE;NULL;NULL;02 28 01 22 35;michel(a)sofradi.fr;24675;NULL;
+253978;FX;SOFRADI;D;44 TREILLIERE;NULL;NULL;01 28 01 22 35;NULL;24675;NULL;
+253979;FX;SOFRADI;D;44 TREILLIERE;NULL;NULL;02 28 01 22 35;NULL;24675;NULL;
+253980;FX;DECORS DE L'HABITAT;A+;35 PACE;NULL;NULL;02 99 69 03 04;NULL;24678;NULL;
+253981;FX;FLAMANT INDUSTRIE 4353;NULL;59 RAISMES;NULL;NULL;03 27 36 85 58;NULL;24680;NULL;
+253982;FX;FLAMANT INDUSTRIE 4353;NULL;59 RAISMES;NULL;NULL;03 27 32 47 90;NULL;24680;NULL;
+253983;FX;BATIMAG;A;51 SAINTE MEN;NULL;NULL;03 26 60 14 51;NULL;24688;NULL;
+253984;FX;MENUISERIE PARRET;NULL;69 MESSIMY;NULL;NULL;04 78 45 15 29;cyrille.parret(a)orange.fr;24690;NULL;
+253985;FX;SCOB STE DE CONSTRUCTION;A;35 BREAL S/S;NULL;NULL;02 23 41 16 17;scob.rennes(a)wanadoo.fr;24695;NULL;
+253986;FX;ISOLATION SERVICE;NULL;36 LE BLANC;NULL;NULL;0 ;NULL;24696;NULL;
+253987;FX;GORET;A;72 LA FLECHE;NULL;NULL;02 43 94 00 81;NULL;24698;NULL;
+253988;FX;ALU CONFORT;A+;59 LOMME;NULL;NULL;03 20 93 21 55;NULL;24706;NULL;
+253989;FX;VENIER WALTER - ACTIBA;A;57 SAINT AVOL;NULL;NULL;03 87 94 59 92;NULL;24715;NULL;
+253990;FX;BREGERAS FREDERIC;A;24 MARSAC S/L;NULL;NULL;05 53 54 88 95;NULL;24734;NULL;
+253991;FX;GEDIMAT GUENEE MATERIAUX;A;35 LOUVIGNE D;NULL;NULL;02 99 98 13 66;NULL;24743;NULL;
+253992;FX;CANTARELLI SERGE - EGPS;A;83 Seyne-sur-;NULL;NULL;04 94 06 78 20;egps(a)sfr.fr;24753;NULL;
+253993;FX;RESEAU PRO BATI DECOR ST BRICE;NULL;54 NANCY;NULL;NULL;03 26 87 37 10;NULL;24757;NULL;
+253994;FX;RESEAU PRO BATI DECORFAGNIERES;NULL;54 NANCY;NULL;NULL;03 26 64 70 38;NULL;24758;NULL;
+253995;FX;VALLADON;A;92 MONTROUGE;NULL;NULL;01 46 57 92 13;valladon.sa(a)wanadoo.fr;24769;NULL;
+253996;FX;GEDIMAT SPIRE;A;80 HARLEVILLE;NULL;NULL;03 24 33 79 80;f.jumeau(a)gedimat.fr;24776;NULL;
+253997;FX;GEDIMAT SPIRE;A;80 HARLEVILLE;NULL;NULL;03 24 33 79 80;NULL;24776;NULL;
+253998;FX;PELLEREI JEAN - MARIE;A;60 MONCEAUX;NULL;NULL;03 44 70 06 93;NULL;24778;NULL;
+253999;FX;GOBERT MENUISERIE;NULL;59 MAING;NULL;NULL;03 27 40 23 09;NULL;24784;NULL;
+254000;FX;ASCI ROY;NULL;91 CROSNE;NULL;NULL;01 69 48 34 56;NULL;24785;NULL;
+254001;FX;TANGUY;A+;29 LANNILIS;NULL;NULL;02 98 04 05 80;NULL;24831;NULL;
+254002;FX;ZANCANARO;A+;07 CHARMES SU;NULL;NULL;04 75 60 87 16;zancanaro-menuiserie(a)wanadoo.fr;24845;NULL;
+254003;FX;LA MAISON DUARTE 4388;NULL;57 SARREBOURG;NULL;NULL;0 ;NULL;24852;NULL;
+254004;FX;ASF ATELIER SERRURERIE;A;29 PLABENNEC;NULL;NULL;02 98 37 92 02;NULL;24853;NULL;
+254005;FX;TROUILLARD POINT P PDL ANCENIS;A;44 ANCENIS;NULL;NULL;02 40 96 35 98;NULL;24874;NULL;
+254006;FX;TROUILLARD POINT P PDL ANGERS;A;49 ANGERS;NULL;NULL;02 41 43 34 91;NULL;24884;NULL;
+254007;FX;TROUILLARD POINT P PDL CHOLET;A;49 CHOLET;NULL;NULL;02á41á75á2249;NULL;24886;NULL;
+254008;FX;TROUILLARD POINT P PDL SAUMUR;A;49 SAUMUR;NULL;NULL;02 41 67 70 16;NULL;24888;NULL;
+254009;FX;POINT P PDL CERIZAY;A;79 CERIZAY;NULL;NULL;05 49 80 00 81;NULL;24889;NULL;
+254010;FX;AID 4721;A;92 GARCHES;NULL;NULL;01 47 41 95 05;NULL;24893;NULL;
+254011;FX;GABORIT JR;A;79 TERVES;NULL;NULL;05 49 80 60 60;NULL;24894;NULL;
+254012;FX;SERAG;B;38 MONTBONNOT;NULL;NULL;04 76 41 83 36;NULL;24899;NULL;
+254013;FX;ROGER CDB;A;80 DURY;NULL;NULL;03 22 95 18 18;NULL;24906;NULL;
+254014;FX;ORCH- ORGANISATION RENOV CONSE;A;76 MAUQUENCHY;NULL;NULL;02 35 90 35 39;NULL;24916;NULL;
+254015;FX;JOCK S;A;78 ARNOUVILLE;NULL;NULL;01 30 93 95 54;NULL;24920;NULL;
+254016;FX;TROUILLARD POINT P PDL;A;85 ST GILLES;NULL;NULL;02 51 55 16 36;NULL;24933;NULL;
+254017;FX;GARNIER 4030;NULL;77 MELUN;NULL;NULL;01 64 39 89 66;NULL;24934;NULL;
+254018;FX;DEGLANE;D;92 ISSY LES M;NULL;NULL;01 46 38 11 04;NULL;24935;NULL;
+254019;FX;BAIE OUEST CAEN;A;14 FLEURY SUR;NULL;NULL;02 31 74 34 69;NULL;24938;NULL;
+254020;FX;ACM MARIE;A;91 STE GENEVI;NULL;NULL;01 60 16 42 47;acm-marie(a)wanadoo.fr;24941;NULL;
+254021;FX;ACM MARIE;A;91 STE GENEVI;NULL;NULL;01 60 16 42 47;NULL;24941;NULL;
+254022;FX;POINT P BRETAGNE PLANCOET;A;22 PLANCOET;NULL;NULL;02 96 80 44 50;NULL;24952;NULL;
+254023;FX;POINT P CHAPIN CHANGE;NULL;35 RENNES CED;NULL;NULL;02 43 56 80 83;NULL;24955;NULL;
+254024;FX;GEDIMAT HOCHET EQUEURDREVILLE;A;50 EQUEURDREV;NULL;NULL;02 33 93 00 76;NULL;24957;NULL;
+254025;FX;DIALUX;A;69 VAULX EN V;NULL;NULL;04 78 49 15 16;NULL;24964;NULL;
+254026;FX;POINT P PDL LES SABLES D OLONN;A;85 LES SABLES;NULL;NULL;02 51 32 86 19;NULL;24986;NULL;
+254027;FX;PIGUET;A;69 VILLEURBAN;NULL;NULL;04 72 89 17 49;NULL;24990;NULL;
+254028;FX;HCL;D;85 LES HERBIE;NULL;NULL;02 51 67 07 00;NULL;24993;NULL;
+254029;FX;HCL;D;85 LES HERBIE;NULL;NULL;0 ;NULL;24993;NULL;
+254030;FX;CHAUSSON TRIALIS ST VALLIER;NULL;26 ST VALLIER;NULL;NULL;04 75 23 13 37;NULL;24995;NULL;
+254031;FX;CHAUSSON TRIALIS ST VALLIER;NULL;26 ST VALLIER;NULL;NULL;04 75 23 13 37;jean.bouchet(a)chausson-materiaux.fr;24995;NULL;
+254032;FX;LEJOLLY GEORGES 4178;NULL;50 CREANCES;NULL;NULL;02 33 46 29 91;NULL;25008;NULL;
+254033;FX;STORES SERVISYSTEM;B;CH 1258 PERLY;NULL;NULL;412 27 71 03 73;storesservisustem(a)bluewin.ch;25011;NULL;
+254034;FX;STORES SERVISYSTEM;B;CH 1258 PERLY;NULL;NULL;412 27 71 03 73;NULL;25011;NULL;
+254035;FX;AUSUD;NULL;84 ORANGE;NULL;NULL;04 90 51 03 83;NULL;25019;NULL;
+254036;FX;CHB MIROITERIE;A;47 NERAC;NULL;NULL;05 53 65 79 31;NULL;25022;NULL;
+254037;FX;MAZILLER GUY;A;01 ST DIDIER;NULL;NULL;04 74 04 95 62;NULL;25025;NULL;
+254038;FX;ARCH;A;34 PORTIRAGNE;NULL;NULL;04 67 01 62 08;sarlarch(a)aol.com;25038;NULL;
+254039;FX;MIROITERIE DE L'OUEST ARMORIQU;A;56 CAUDAN;NULL;NULL;02 97 76 78 44;NULL;25039;NULL;
+254040;FX;MIROITERIE DE L'OUEST ARMORIQU;A;56 CAUDAN;NULL;NULL;02 97 76 86 68;NULL;25039;NULL;
+254041;FX;ALPASER;B;74 LA ROCHE S;NULL;NULL;04 50 25 82 75;NULL;25042;NULL;
+254042;FX;COMPTOIR EQUIPE BAIE 5100;A;94 CACHAN;NULL;NULL;01 45 46 11 30;NULL;25043;NULL;
+254043;FX;HELP BRETAGNE - GOURVEN JACQUE;NULL;29 ROSPORDEN;NULL;NULL;02 98 57 82 98;NULL;25049;NULL;
+254044;FX;ICDS 4743;NULL;50 COUVAINS;NULL;NULL;02 33 57 53 43;NULL;25050;NULL;
+254045;FX;MELIN R. MATERIAUX LE BLANC;NULL;36 LE BLANC;NULL;NULL;02 54 37 85 16;NULL;25064;NULL;
+254046;FX;MARTINEZ FRERES;A;47 VILLENEUVE;NULL;NULL;05 53 01 29 70;NULL;25069;NULL;
+254047;FX;LADENBURGER;A;57 STE BARBE;NULL;NULL;03 87 76 88 59;ladenburger.gilles(a)wanadoo.fr;25071;NULL;
+254048;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 69 83 03 80;NULL;25073;NULL;
+254049;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 64 54 38 51;NULL;25073;NULL;
+254050;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 69 28 73 17;pointp-lesulis-menuiserie(a)saint-gobain.com;25073;NULL;
+254051;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 34 50 58 68;NULL;25073;NULL;
+254052;FX;POINT P CIMA;D;92 NANTERRE C;NULL;NULL;01 69 17 13 89;NULL;25073;NULL;
+254053;FX;CHAVIGNY ST DENIS;A+;28 ST DENIS L;NULL;NULL;0 ;stdenis.menuiseries(a)groupechavigny.fr;25078;NULL;
+254054;FX;CHAVIGNY ST DENIS;A+;28 ST DENIS L;NULL;NULL;02 37 44 54 85;NULL;25078;NULL;
+254055;FX;JAERLING MARC;B;LU 50 PETANGE;NULL;NULL;352 23 65 02 86;NULL;25079;NULL;
+254056;FX;FERIAUD;A;77 TOURNAN EN;NULL;NULL;01 64 25 34 88;NULL;25082;NULL;
+254057;FX;METAL OUDEAU;A;41 SAINT LAUR;NULL;NULL;02 54 87 06 70;NULL;25089;NULL;
+254058;FX;MURAT FRERES;A;24 BOULAZAC;NULL;NULL;0 ;NULL;25093;NULL;
+254059;FX;PAPON ERIC;A;19 USSEL;NULL;NULL;05 55 72 50 47;NULL;25096;NULL;
+254060;FX;LAMY 4651;NULL;72 SABLE;NULL;NULL;02 43 95 70 43;NULL;25109;NULL;
+254061;FX;AERO STORES 4598;NULL;31 BLAGNAC;NULL;NULL;05 61 71 88 14;NULL;25110;NULL;
+254062;FX;GAVARD ERIC;B;74 MARCELLAZ;NULL;NULL;04 50 31 11 90;NULL;25138;NULL;
+254063;FX;STE DE DIFFUSION DE FRANCHISES;A;31 TOULOUSE;NULL;NULL;05 61 25 24 14;NULL;25146;NULL;
+254064;FX;GTB CONSTRUCTION;A;35 RENNES;NULL;NULL;02 99 41 85 86;NULL;25156;NULL;
+254065;FX;LAVISSE DIDIER;A;94 CHOISY LE;NULL;NULL;01 48 92 04 29;NULL;25157;NULL;
+254066;FX;ALU CONCEPT;B;42 BONSON;NULL;NULL;04 77 55 10 02;NULL;25161;NULL;
+254067;FX;ALU BELLA STORES;A;13 SEPTEMES L;NULL;NULL;04 91 09 74 51;contact(a)alubellestores.fr;25163;NULL;
+254068;FX;ALU BELLA STORES;A;13 SEPTEMES L;NULL;NULL;04 91 51 92 15;NULL;25163;NULL;
+254069;FX;LYON STORES;D;69 BRON;NULL;NULL;04 72 37 03 48;NULL;25168;NULL;
+254070;FX;GUILLOUX MATERIAUX;A;50 SARTILLY;NULL;NULL;02 33 89 29 28;NULL;25191;NULL;
+254071;FX;ALU 24;A+;24 BOULAZAC;NULL;NULL;05 53 08 02 92;NULL;25193;NULL;
+254072;FX;AM3 NOUVELLE DIMENSION RJ;A;79 NIORT CEDE;NULL;NULL;05 49 79 00 90;am3nd79(a)wanadoo.fr;25195;NULL;
+254073;FX;AM3 NOUVELLE DIMENSION RJ;A;79 NIORT CEDE;NULL;NULL;05 49 79 00 90;NULL;25195;NULL;
+254074;FX;ATD (AGENCEMENT DECORAT.);B;97 KOUROU CED;NULL;NULL;05 94 32 54 10;yannick.atd(a)wanadoo.fr;25204;NULL;
+254075;FX;ATD (AGENCEMENT DECORAT.);B;97 KOUROU CED;NULL;NULL;0 ;NULL;25204;NULL;
+254076;FX;ATD (AGENCEMENT DECORAT.);B;97 KOUROU CED;NULL;NULL;05 94 32 54 10;atd.sarl(a)wanadoo.fr;25204;NULL;
+254077;FX;LAMY DANIEL;NULL;35 MONTREUIL;NULL;NULL;02 99 74 64 48;NULL;25205;NULL;
+254078;FX;MEROLLI;B;73 AIX LES BA;NULL;NULL;04 79 35 12 44;NULL;25209;NULL;
+254079;FX;MEROLLI;B;73 AIX LES BA;NULL;NULL;04 79 35 12 44;selleriemerolli(a)wanadoo.fr;25209;NULL;
+254080;FX;LOUVET MARC;A;11 TREZIERS;NULL;NULL;04 68 69 57 12;NULL;25216;NULL;
+254081;FX;MATEOS;A;45 ST JEAN DE;NULL;NULL;02 38 43 75 08;NULL;25226;NULL;
+254082;FX;TOULOUSAINE DE MIROITERIE;A;31 PLAISANCE;NULL;NULL;05 62 74 12 56;NULL;25234;NULL;
+254083;FX;ZIEGLER ETS;A;22 GRACES;NULL;NULL;02 96 40 15 61;NULL;25238;NULL;
+254084;FX;CAZENAVE;A;64 BAYONNE;NULL;NULL;05 59 50 37 39;NULL;25239;NULL;
+254085;FX;KHEOPS GUERIN;A;28 LEVES;NULL;NULL;02 37 36 50 90;NULL;25250;NULL;
+254086;FX;FALHER JEAN YVES;B;22 ROSTRENEN;NULL;NULL;0 ;NULL;25255;NULL;
+254087;FX;FALHER JEAN YVES;B;22 ROSTRENEN;NULL;NULL;02 96 24 28 63;NULL;25255;NULL;
+254088;FX;LES ARTISANS DU STORE;A;94 IVRY SUR S;NULL;NULL;01 46 71 21 22;jeanmichel.soussen(a)libertysurf.fr;25270;NULL;
+254089;FX;LES ARTISANS DU STORE;A;94 IVRY SUR S;NULL;NULL;01 46 71 21 22;NULL;25270;NULL;
+254090;FX;OJC DIFFUSION;A+;02 SAINT QUEN;NULL;NULL;03 23 67 11 09;ojc.accueil(a)orange.fr;25271;NULL;
+254091;FX;OJC DIFFUSION;A+;02 SAINT QUEN;NULL;NULL;03 23 67 11 09;NULL;25271;NULL;
+254092;FX;POINT P NOYON;D;60 NOYON;NULL;NULL;03 29 80 21 75;michele.falala(a)saint-gobain.com;25274;NULL;
+254093;FX;POINT P NOYON;D;60 NOYON;NULL;NULL;03 44 09 44 49;NULL;25274;NULL;
+254094;FX;MELIN MATERIAUX DUN;NULL;18 DUN;NULL;NULL;02 48 59 84 14;NULL;25282;NULL;
+254095;FX;APE;A;09 LAROQUE D';NULL;NULL;05 61 01 18 81;NULL;25287;NULL;
+254096;FX;ANBM ACCUEIL NEGOCE BOIS MAT;D;56 HENNEBONT;NULL;NULL;02 97 36 22 32;NULL;25290;NULL;
+254097;FX;ANBM ACCUEIL NEGOCE BOIS MAT;D;56 HENNEBONT;NULL;NULL;02 97 85 04 76;NULL;25290;NULL;
+254098;FX;VAURY ANDRE;A;45 VILLEMANDE;NULL;NULL;02 38 85 01 22;NULL;25294;NULL;
+254099;FX;GESSON JEAN CLAUDE;A;24 NONTRON;NULL;NULL;0 ;jc.gesson6(a)orange.fr;25303;NULL;
+254100;FX;GESSON JEAN CLAUDE;A;24 NONTRON;NULL;NULL;0 ;NULL;25303;NULL;
+254101;FX;CDM AVALLON;B;89 AVALLON;NULL;NULL;03 86 34 04 46;NULL;25304;NULL;
+254102;FX;DBF ENTREPRISES;A;78 Vernouille;NULL;NULL;01á77101659;dbf.entreprises(a)laposte.net;25307;NULL;
+254103;FX;SILVESTRI NICOLA;A;75 PARIS;NULL;NULL;01 43 21 73 61;NULL;25310;NULL;
+254104;FX;VESSIER ALAIN;A;29 FOUESNANT;NULL;NULL;02 98 56 24 93;NULL;25319;NULL;
+254105;FX;NUPIED CHRISTOPHE SARL;A;35 ARBRISSEL;NULL;NULL;02 99 96 46 24;NULL;25322;NULL;
+254106;FX;PETTIER;A;35 FOUGERES;NULL;NULL;02 99 94 08 73;infos(a)pettier.fr;25333;NULL;
+254107;FX;PETTIER;A;35 FOUGERES;NULL;NULL;02 99 94 08 73;NULL;25333;NULL;
+254108;FX;DORNE PIERRE;A+;26 VALENCE;NULL;NULL;04 75 42 73 18;NULL;25335;NULL;
+254109;FX;DORNE PIERRE;A+;26 VALENCE;NULL;NULL;04 75 43 44 21;sarl.dorne(a)dorne-menuiserie.com;25335;NULL;
+254110;FX;ALUPLAN;A+;31 CUGNAUX;NULL;NULL;05 62 87 32 60;NULL;25337;NULL;
+254111;FX;LORMEAU MICKAEL;A;44 COUERON;NULL;NULL;02 40 63 09 62;NULL;25338;NULL;
+254112;FX;CYB STORE;NULL;92 GENNEVILLI;NULL;NULL;01 40 85 42 23;claire.duvigneau(a)cybstores.com;25343;NULL;
+254113;FX;CYB STORE;NULL;92 GENNEVILLI;NULL;NULL;01 40 85 42 23;NULL;25343;NULL;
+254114;FX;CYB STORE;NULL;92 GENNEVILLI;NULL;NULL;01 40 85 42 23;vomscheid(a)cybstores.com;25343;NULL;
+254115;FX;CODICOM LM DECOR;A;56 AURAY;NULL;NULL;02 97 24 20 20;NULL;25345;NULL;
+254116;FX;SERRURERIE DES BUCLOS;A+;38 MEYLAN;NULL;NULL;04 76 90 16 18;muglia.buclos(a)wanadoo.fr;25346;NULL;
+254117;FX;SERRURERIE DES BUCLOS;A+;38 MEYLAN;NULL;NULL;04 76 90 16 18;NULL;25346;NULL;
+254118;FX;ALPHA BAIE ARIEGE 4908;A;09 PAMIERS;NULL;NULL;05 61 60 51 02;NULL;25348;NULL;
+254119;FX;ATELIERS EJARQUE SARL;B;73 CHALLES LE;NULL;NULL;04 79 72 79 62;forge(a)ejarque.pro;25351;NULL;
+254120;FX;ATELIERS EJARQUE SARL;B;73 CHALLES LE;NULL;NULL;04 79 72 79 62;serrurerie(a)ejarque.pro;25351;NULL;
+254121;FX;ATELIERS EJARQUE SARL;B;73 CHALLES LE;NULL;NULL;04 79 72 79 62;automatismes(a)ejarque.pro;25351;NULL;
+254122;FX;PROMOSTORE CONFORT;A;06 NICE;NULL;NULL;04 92 07 07 46;NULL;25353;NULL;
+254123;FX;SOLISO EUROPE;NULL;44 NANTES CED;NULL;NULL;02 40 93 06 72;NULL;25360;NULL;
+254124;FX;ESPINOS ROY 4243;NULL;13 MARSEILLE;NULL;NULL;04 91 66 95 45;NULL;25361;NULL;
+254125;FX;PACARY YVES - PRO VOLETS;A;34 Villeveyra;NULL;NULL;04 67 78 19 25;NULL;25362;NULL;
+254126;FX;GOUPIL JEAN SEBASTIEN;B;73 MERY;NULL;NULL;04 79 61 24 95;volets-goupil(a)hotmail.fr;25370;NULL;
+254127;FX;FERMETURES FERTOISES;NULL;72 CHERRE;NULL;NULL;0 ;NULL;25371;NULL;
+254128;FX;SOPRAL 06;B;06 ANTIBES;NULL;NULL;04 97 21 12 80;NULL;25375;NULL;
+254129;FX;ROLL STORES;A;94 IVRY SUR S;NULL;NULL;01 46 70 07 99;NULL;25387;NULL;
+254130;FX;EGL;A;13 LAMBESC;NULL;NULL;04 42 92 88 57;NULL;25388;NULL;
+254131;FX;ROUVRES & PLEINTEL;D;14 DIVES SUR;NULL;NULL;02 31 91 42 18;NULL;25396;NULL;
+254132;FX;AMB;A;91 VILLEMOISS;NULL;NULL;01 60 16 05 31;NULL;25413;NULL;
+254133;FX;BURLET ETS;D;43 SÚauve-sur;NULL;NULL;0 ;NULL;25418;NULL;
+254134;FX;BURLET ETS;D;43 SÚauve-sur;NULL;NULL;04 77 74 59 72;NULL;25418;NULL;
+254135;FX;PLURISOL;A;76 GRAND QUEV;NULL;NULL;02 35 68 03 38;r.lamy(a)plurisol.com;25421;NULL;
+254136;FX;PLURISOL;A;76 GRAND QUEV;NULL;NULL;02 35 97 16 27;NULL;25421;NULL;
+254137;FX;PLURISOL;A;76 GRAND QUEV;NULL;NULL;02 35 68 03 38;NULL;25421;NULL;
+254138;FX;DESILLES ALAIN;D;35 NOUVOITOU;NULL;NULL;02 99 37 56 39;eurl.desilles(a)orange.fr;25432;NULL;
+254139;FX;ALUVER;NULL;22 PORDIC;NULL;NULL;02 96 79 30 63;NULL;25433;NULL;
+254140;FX;MIROITERIE SEMIS RJ;A;31 TOULOUSE;NULL;NULL;05 62 47 58 01;NULL;25434;NULL;
+254141;FX;OGUEY;B;38 LE VERSOUD;NULL;NULL;04 76 77 36 44;NULL;25440;NULL;
+254142;FX;LVS INDUSTRIE;NULL;91 VIGNEUX SU;NULL;NULL;01 69 52 36 36;NULL;25447;NULL;
+254143;FX;FENETRES BOURLET;A;78 LE PECQ;NULL;NULL;01 39 14 20 25;NULL;25453;NULL;
+254144;FX;LES INTERIEURS DE ROBIEN;A+;35 RENNES;NULL;NULL;02 99 27 06 07;NULL;25462;NULL;
+254145;FX;RACINE C. ESPACE STORES FERMET;A;93 DRANCY;NULL;NULL;01 48 31 19 38;valentino117(a)voila.fr;25466;NULL;
+254146;FX;CAYEUX SOCIETE EXPLOITATION;A;76 LE PETIT Q;NULL;NULL;02 35 72 60 46;NULL;25470;NULL;
+254147;FX;ALUTEC;A;82 MONTAUBAN;NULL;NULL;05 63 20 17 92;NULL;25476;NULL;
+254148;FX;FOGLIA ABP;A;94 VINCENNES;NULL;NULL;01 43 98 15 04;NULL;25484;NULL;
+254149;FX;CHAUSSON TRIALIS DAVEZIEUX;NULL;07 DAVEZIEUX;NULL;NULL;04 75 67 79 45;NULL;25485;NULL;
+254150;FX;BAVOYSI TOLERIE INDUSTRIELLE;A;39 CHAMPAGNOL;NULL;NULL;03 84 52 12 96;NULL;25491;NULL;
+254151;FX;PLANTIER PATRICK;A+;69 AMPLEPUIS;NULL;NULL;04 74 89 28 46;NULL;25492;NULL;
+254152;FX;JPG GRANDJEAN JEAN PIERRE;B;38 VILLEFONTA;NULL;NULL;04 74 96 01 24;j-p-g-sarl509(a)orange.fr;25504;NULL;
+254153;FX;BIG MAT CHAMIGNON;B;03 LURCY LEVI;NULL;NULL;04 70 67 35 55;NULL;25510;NULL;
+254154;FX;MAUREL AGM;A;83 TOULON;NULL;NULL;0 ;gilbert.maurel(a)live.fr;25529;NULL;
+254155;FX;DERLET;A;57 AUDUN LE T;NULL;NULL;03 82 52 21 50;NULL;25532;NULL;
+254156;FX;MONDIAL STORES;A;38 RUY;NULL;NULL;04 74 93 07 19;NULL;25533;NULL;
+254157;FX;ARTHUS;NULL;92 LEVALLOIS;NULL;NULL;01 47 58 08 76;NULL;25551;NULL;
+254158;FX;DAUPHINE STORES;D;38 ST EGREVE;NULL;NULL;04 76 75 49 17;NULL;25568;NULL;
+254159;FX;RATINEAU;A;87 EYMOUTIERS;NULL;NULL;05 55 69 29 30;NULL;25571;NULL;
+254160;FX;FLAMANT SYLVAIN;D;24 MUSSIDAN;NULL;NULL;05 53 80 16 43;NULL;25572;NULL;
+254161;FX;BATIFINI 303107;A;34 ST AUNES;NULL;NULL;04 67 59 24 78;NULL;25578;NULL;
+254162;FX;CL DIVERS PNE F. CHEVAL;NULL;91 P;NULL;NULL;0 ;NULL;25581;NULL;
+254163;FX;CL DIVERS PNE F. CHEVAL;NULL;91 P;NULL;NULL;0.......;NULL;25581;NULL;
+254164;FX;JEANTO;A;69 LYON;NULL;NULL;04 78 69 86 81;NULL;25585;NULL;
+254165;FX;MELIN CHATILLON SUR INDRE;NULL;36 CHATILLON;NULL;NULL;02 54 38 90 76;NULL;25588;NULL;
+254166;FX;GOULET GERARD;A+;41 NEUNG SUR;NULL;NULL;02 54 83 75 41;NULL;25592;NULL;
+254167;FX;MATERIAUX SERVICE;NULL;77 VARENNES S;NULL;NULL;01 60 73 50 33;NULL;25608;NULL;
+254168;FX;MAYTOP ISO 45;NULL;45 FLEURY LES;NULL;NULL;02 38 83 97 48;NULL;25609;NULL;
+254169;FX;CL DIVERS PNE V. VALOGGIA;A;94 P;NULL;NULL;0 ;NULL;25634;NULL;
+254170;FX;SAEB;A+;03 ABREST;NULL;NULL;04 70 98 50 07;NULL;25637;NULL;
+254171;FX;SAEB;A+;03 ABREST;NULL;NULL;04á70á985007;NULL;25637;NULL;
+254172;FX;COLLIN;A;95 SANNOIS;NULL;NULL;01 34 11 16 85;NULL;25641;NULL;
+254173;FX;EYMARD DANIEL;A;24 CHAMPS ROM;NULL;NULL;05 53 56 84 56;NULL;25642;NULL;
+254174;FX;LA MAISON DU STORE;A;01 MIRIBEL;NULL;NULL;04 72 77 91 75;NULL;25651;NULL;
+254175;FX;STOPSOLAR 4569;NULL;31 TOULOUSE C;NULL;NULL;05 61 76 15 14;NULL;25661;NULL;
+254176;FX;STYL DECOR;A+;26 PIERRELATT;NULL;NULL;09 72 33 29 91;info(a)styl-decor.fr;25666;NULL;
+254177;FX;ALLIER STORES FERMETURES;A+;03 CHARMEIL;NULL;NULL;04 70 32 85 43;NULL;25670;NULL;
+254178;FX;ALLIER STORES FERMETURES;A+;03 CHARMEIL;NULL;NULL;0 ;NULL;25670;NULL;
+254179;FX;ALLIER STORES FERMETURES;A+;03 CHARMEIL;NULL;NULL;0 ;thierry.marolles(a)orange.fr;25670;NULL;
+254180;FX;APB MENUISERIE 5068;A+;55 VASSINCOUR;NULL;NULL;03 29 78 51 11;NULL;25674;NULL;
+254181;FX;SERRE MENUISERIE MIROIT;B;13 VELAUX;NULL;NULL;04 42 87 42 92;NULL;25684;NULL;
+254182;FX;VERALIA;A+;30 MARGUERITE;NULL;NULL;04 66 75 26 40;NULL;25685;NULL;
+254183;FX;LERT MENUISERIE;A+;26 ST RESTITU;NULL;NULL;04 75 04 57 04;NULL;25699;NULL;
+254184;FX;S3M ROBERT;A+;92 MALAKOFF;NULL;NULL;01 42 53 95 08;NULL;25701;NULL;
+254185;FX;MVA;D;35 LE RHEU;NULL;NULL;02 99 14 95 29;NULL;25703;NULL;
+254186;FX;CIVEL ERIC;NULL;44 PREFAILLES;NULL;NULL;02 40 64 51 11;NULL;25706;NULL;
+254187;FX;MEGNIEN BMO CHATELLERAULT;NULL;86 CHATELLERA;NULL;NULL;05 49 21 09 21;NULL;25708;NULL;
+254188;FX;EURO VERRE 4610;NULL;63 MOZAC;NULL;NULL;04 73 74 48 71;NULL;25730;NULL;
+254189;FX;LALLIARD BOIS ET DERIVES;A;74 SAINT PIER;NULL;NULL;04 50 03 87 77;NULL;25737;NULL;
+254190;FX;LAMY DANIEL;A;85 MONTAIGU;NULL;NULL;02 51 94 19 62;NULL;25762;NULL;
+254191;FX;AMS;A+;03 AVERMES;NULL;NULL;04 70 46 75 65;NULL;25763;NULL;
+254192;FX;AMS;A+;03 AVERMES;NULL;NULL;0 ;NULL;25763;NULL;
+254193;FX;AMS;A+;03 AVERMES;NULL;NULL;04 70 46 75 65;cb(a)ams-morette.com;25763;NULL;
+254194;FX;AMS;A+;03 AVERMES;NULL;NULL;0 ;hfrancois(a)ams-morette.com;25763;NULL;
+254195;FX;AMS;A+;03 AVERMES;NULL;NULL;04 70 46 75 65;jm(a)ams-morette.com;25763;NULL;
+254196;FX;AMS;A+;03 AVERMES;NULL;NULL;0 ;NULL;25763;NULL;
+254197;FX;APPIANO J.;A;72 RUAUDIN;NULL;NULL;02 43 75 79 43;appiano(a)wanadoo.fr;25767;NULL;
+254198;FX;ECPM;A+;26 LA ROCHE D;NULL;NULL;04 75 84 76 43;NULL;25768;NULL;
+254199;FX;ADM 4420;NULL;79 ST PARDOUX;NULL;NULL;05 49 63 45 57;NULL;25772;NULL;
+254200;FX;PAVEC CONSTRUCTIONS;A+;29 QUIMPERLE;NULL;NULL;02 98 96 19 83;NULL;25788;NULL;
+254201;FX;DUPRE DANIEL;A;57 METZING;NULL;NULL;0 ;NULL;25789;NULL;
+254202;FX;MORENO MARIANO;A;69 DECINES;NULL;NULL;04 72 02 05 79;NULL;25794;NULL;
+254203;FX;BERGE GILBERT;A;45 FLEURY LES;NULL;NULL;02 38 86 31 98;NULL;25808;NULL;
+254204;FX;COMPTOIR FORESTIER;A;45 MONTARGIS;NULL;NULL;02 38 99 02 25;NULL;25813;NULL;
+254205;FX;COMPTOIR FORESTIER;A;45 MONTARGIS;NULL;NULL;02 38 99 02 25;jpluter(a)comptoirforestier.com;25813;NULL;
+254206;FX;LARMOIRE ERIC;D;14 CROISSANVI;NULL;NULL;02 31 23 82 47;NULL;25814;NULL;
+254207;FX;LAMBERT - TOUT FAIRE;A;72 MAYET;NULL;NULL;02 43 46 05 57;NULL;25824;NULL;
+254208;FX;CHAUVET;B;63 LEZOUX;NULL;NULL;04 73 73 12 48;NULL;25827;NULL;
+254209;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;22 ST BRIEUC;NULL;NULL;02 96 68 22 67;NULL;25830;NULL;
+254210;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;22 ST BRIEUC;NULL;NULL;02 96 33 59 41;NULL;25830;NULL;
+254211;FX;MTM;D;37 MONTS;NULL;NULL;02 47 26 71 84;mtm.vilhem-fouquet(a)wanadoo.fr;25848;NULL;
+254212;FX;OXXO;A;71 CLUNY;NULL;NULL;04 72 52 37 30;NULL;25849;NULL;
+254213;FX;BATI ALU;A+;63 ST BONNET;NULL;NULL;04 73 63 31 39;NULL;25854;NULL;
+254214;FX;BATI ALU;A+;63 ST BONNET;NULL;NULL;04 73 63 31 39;bati.alu(a)wanadoo.fr;25854;NULL;
+254215;FX;M3C COURTOIS 4484;NULL;02 SAINT QUEN;NULL;NULL;03 23 51 06 22;NULL;25856;NULL;
+254216;FX;MONTBOYER METAL;A+;16 MONTBOYER;NULL;NULL;05 45 98 40 32;NULL;25859;NULL;
+254217;FX;PHILIPP FRERES;A+;68 COLMAR;NULL;NULL;03 89 27 46 65;NULL;25877;NULL;
+254218;FX;BOTON REGIS;A;79 MONCOUTANT;NULL;NULL;0 ;NULL;25892;NULL;
+254219;FX;CODI;A;35 RENNES;NULL;NULL;02 99 84 08 12;NULL;25894;NULL;
+254220;FX;LECOMTE HIVET;A;76 ROUEN;NULL;NULL;02 35 72 95 75;NULL;25900;NULL;
+254221;FX;BASCOULERGUE PIERRE;A;18 BOURGES;NULL;NULL;02 48 65 93 15;NULL;25909;NULL;
+254222;FX;ALUMINIUM PYRENEES;A;31 ST ALBAN;NULL;NULL;05 61 09 54 92;NULL;25913;NULL;
+254223;FX;RESEAU PRO CANTRELLE ABBEVILLE;NULL;80 ABBEVILLE;NULL;NULL;03 22 20 79 78;NULL;25915;NULL;
+254224;FX;BRIARD JC SOCIETE;D;95 Ermont;NULL;NULL;01 60 60 87 50;NULL;25920;NULL;
+254225;FX;BRIARD JC SOCIETE;D;95 Ermont;NULL;NULL;01 39 95 74 47;NULL;25920;NULL;
+254226;FX;CBC;NULL;83 TOULON CED;NULL;NULL;04 94 08 83 84;NULL;25928;NULL;
+254227;FX;AIME FORMOSA;A;13 MARSEILLE;NULL;NULL;04 91 95 94 73;NULL;25931;NULL;
+254228;FX;NORMANDIE BAIE 4217;NULL;14 IFS;NULL;NULL;02 31 52 20 52;NULL;25938;NULL;
+254229;FX;STRUCTURES ESPACE LUMIERE;A+;13 MIMET;NULL;NULL;04 42 51 47 73;NULL;25954;NULL;
+254230;FX;POINT P COMAT MONTENDRE;A;17 MONTENDRE;NULL;NULL;05 46 49 23 58;NULL;25957;NULL;
+254231;FX;BONGIOVANNI CHARLES;A;13 MARSEILLE;NULL;NULL;04 91 50 56 71;NULL;25963;NULL;
+254232;FX;AP2R (AGENCEMENT PEINTURE;A+;91 SAVIGNY SU;NULL;NULL;01 69 05 55 41;NULL;25976;NULL;
+254233;FX;SAVARY STORES ET BACHES SARL;B;CH 1026 ECHAN;NULL;NULL;412 17 02 27 95;savarystores(a)urbanet.ch;25986;NULL;
+254234;FX;SFP STE FRANCAISE DE PLAFOND;A;94 MANDRES LE;NULL;NULL;01 58 08 60 15;NULL;26025;NULL;
+254235;FX;VIBRAMENAL;NULL;72 VIBRAYE;NULL;NULL;02 43 93 62 14;NULL;26034;NULL;
+254236;FX;GEDIMAT LDP CHENEL MATERI;A;76 LE HAVRE;NULL;NULL;02 35 24 17 80;NULL;26037;NULL;
+254237;FX;LE DORE BOIS ET MATERIAUX;D;56 AURAY CEDE;NULL;NULL;02 97 24 22 58;NULL;26038;NULL;
+254238;FX;MENUISERIE COURCELLES PITOIS;A;45 MARDIE;NULL;NULL;02 38 91 14 73;NULL;26049;NULL;
+254239;FX;MENUBOIS;A+;42 MABLY;NULL;NULL;04 77 70 89 34;NULL;26050;NULL;
+254240;FX;MENUBOIS;A+;42 MABLY;NULL;NULL;0 ;NULL;26050;NULL;
+254241;FX;SUREAU JEAN;A;37 STE MAURE;NULL;NULL;02 47 65 51 31;NULL;26053;NULL;
+254242;FX;EQUIP NORD 4570;NULL;59 DOUAI;NULL;NULL;03 20 88 28 63;NULL;26056;NULL;
+254243;FX;FERMOBAT SUD 4382;NULL;83 LA CADIERE;NULL;NULL;04 94 98 24 55;NULL;26063;NULL;
+254244;FX;BARTHE CHRISTIAN;A;47 NERAC;NULL;NULL;05 53 65 60 10;NULL;26069;NULL;
+254245;FX;DAUPHIN 302849;NULL;93 BONDY;NULL;NULL;01 48 50 73 01;NULL;26071;NULL;
+254246;FX;ABPSI;D;94 VARENNE SA;NULL;NULL;01 48 83 39 54;NULL;26076;NULL;
+254247;FX;MOYNET ALU;A+;79 CHAURAY;NULL;NULL;05 49 76 10 32;NULL;26087;NULL;
+254248;FX;DANE DISTRIBUTION INDUSTRIELLE;A;65 ALLIER;NULL;NULL;05 62 45 98 99;NULL;26094;NULL;
+254249;FX;ATULAM AGENCE LIMOGES;A;23 JARNAGES;NULL;NULL;05 55 33 62 90;NULL;26095;NULL;
+254250;FX;ATULAM AGENCE LIMOGES;A;23 JARNAGES;NULL;NULL;05 55 80 90 59;NULL;26095;NULL;
+254251;FX;STORES ET LOISIRS;A;69 VILLEFRANC;NULL;NULL;04 74 62 28 75;NULL;26099;NULL;
+254252;FX;PROMETAL;B;63 AMBERT;NULL;NULL;04 73 82 49 10;NULL;26100;NULL;
+254253;FX;AGAESSE MICHEL;B;35 LE RHEU;NULL;NULL;02 99 14 74 60;NULL;26101;NULL;
+254254;FX;TMV;A;38 ST EGREVE;NULL;NULL;04 76 75 82 41;NULL;26102;NULL;
+254255;FX;MIROIT. DES CHARENTES RJ;NULL;17 SAINTES;NULL;NULL;05 46 97 21 06;NULL;26103;NULL;
+254256;FX;VBF M.BISTORIN FRANCIS;A;37 ST CYR SUR;NULL;NULL;0 ;francis.bistorin(a)sfr.fr;26109;NULL;
+254257;FX;SCIERIE BOUTOLLEAU;A;85 BEAUVOIR S;NULL;NULL;02 51 49 39 79;NULL;26113;NULL;
+254258;FX;DA COSTA JOSE;A;91 BOUTIGNY S;NULL;NULL;01 64 57 84 39;NULL;26118;NULL;
+254259;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;02 43 29 16 02;j-michel(a)alubarbier.com;26123;NULL;
+254260;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;02 43 29 16 02;metreur(a)alubarbier.com;26123;NULL;
+254261;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;02 43 29 16 02;alu.barbier(a)wanadoo.fr;26123;NULL;
+254262;FX;BARBIER;D;72 BONNETABLE;NULL;NULL;0 ;NULL;26123;NULL;
+254263;FX;LYON FENETRES;D;69 ST PRIEST;NULL;NULL;04 78 90 67 84;lyon.fenetres(a)wanadoo.fr;26129;NULL;
+254264;FX;LYON FENETRES;D;69 ST PRIEST;NULL;NULL;04 78 90 67 84;NULL;26129;NULL;
+254265;FX;MERCIER DAVID;A;88 SAINTE MAR;NULL;NULL;03 29 55 12 11;NULL;26130;NULL;
+254266;FX;ROUSSELOT LIONEL;A;77 CHEVRY COS;NULL;NULL;01 64 05 12 36;NULL;26132;NULL;
+254267;FX;POUILLARD ET FILS 999999;NULL;91 MONTGERON;NULL;NULL;01 64 08 53 14;NULL;26136;NULL;
+254268;FX;POUILLARD ET FILS 999999;NULL;91 MONTGERON;NULL;NULL;01 69 03 66 33;NULL;26136;NULL;
+254269;FX;DEL BIANCO PAOLO;A;16 COGNAC;NULL;NULL;05 45 32 38 36;NULL;26137;NULL;
+254270;FX;MIROITERIE AVIGLASS;A;84 LE PONTET;NULL;NULL;04 90 32 32 61;NULL;26145;NULL;
+254271;FX;GROLLA VERRES;A+;73 MODANE;NULL;NULL;04 79 05 13 07;NULL;26147;NULL;
+254272;FX;LABASTERE SAS;A;64 BAYONNE;NULL;NULL;05 59 50 60 11;NULL;26148;NULL;
+254273;FX;LABASTERE SAS;A;64 BAYONNE;NULL;NULL;05 59 50 60 24;NULL;26148;NULL;
+254274;FX;LABASTERE SAS;A;64 BAYONNE;NULL;NULL;05 59 55 00 45;NULL;26148;NULL;
+254275;FX;BIG MAT PAULIN;A;43 LANGEAC;NULL;NULL;04 71 02 06 76;NULL;26156;NULL;
+254276;FX;CDM BUCHERES;D;10 BUCHERES;NULL;NULL;03 25 71 20 61;NULL;26170;NULL;
+254277;FX;ARAS UVIR;NULL;69 LES CHERES;NULL;NULL;04 78 47 06 04;NULL;26171;NULL;
+254278;FX;MENTOR SOCIETE NOUVELLE;A+;83 TOULON;NULL;NULL;04 94 61 70 93;NULL;26177;NULL;
+254279;FX;CHARRIER;B;91 QUINCY S/S;NULL;NULL;01 69 39 06 57;NULL;26180;NULL;
+254280;FX;GEDIMAT SEFOR HOUILLES;A;78 HOUILLES;NULL;NULL;01 39 57 10 11;NULL;26183;NULL;
+254281;FX;AFC - AUTOMAT.FERMET.CONCEPT;D;14 BRETTEVILL;NULL;NULL;02 31 26 22 45;NULL;26184;NULL;
+254282;FX;POIROT;A;26 CLAVEYSON;NULL;NULL;04 75 68 89 25;NULL;26191;NULL;
+254283;FX;ALU BOIS CONCEPT 4899;A+;83 ROQUEBRUNE;NULL;NULL;04 94 44 05 63;NULL;26192;NULL;
+254284;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;appro(a)ecodis.fr;26200;NULL;
+254285;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;03 88 48 16 92;l.schott(a)ecodis.fr;26200;NULL;
+254286;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;j.dasilva(a)ecodis.fr;26200;NULL;
+254287;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;e.tatangelo(a)ecodis.fr;26200;NULL;
+254288;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 15;s.baillet(a)ecodis.fr;26200;NULL;
+254289;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;04 78 96 69 16;n.vacle(a)ecodis.fr;26200;NULL;
+254290;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;0 ;appro(a)ecodis.fr;26200;NULL;
+254291;FX;ECODIS;D;69 CHAPONNAY;NULL;NULL;0 ;fx.moreau(a)ecodis.fr;26200;NULL;
+254292;FX;MV FERMETURES 4849;NULL;93 EPINAY SUR;NULL;NULL;01 48 41 36 70;NULL;26208;NULL;
+254293;FX;PINSON JEAN MICHEL;A;45 CHUELLES;NULL;NULL;02 38 96 61 47;NULL;26212;NULL;
+254294;FX;OMNES BERNARD;A;45 CHAINGY;NULL;NULL;02 38 88 80 48;NULL;26216;NULL;
+254295;FX;CHALUMEAU MENUISERIE 302838;A;61 SAINT GERM;NULL;NULL;02 33 32 26 82;NULL;26218;NULL;
+254296;FX;CROS STORES ET FERMETURES;A;31 TOULOUSE;NULL;NULL;05 61 48 30 00;NULL;26225;NULL;
+254297;FX;GENIES;D;89 MONETEAU;NULL;NULL;03 86 42 74 73;NULL;26227;NULL;
+254298;FX;BRIAND;A;35 BEDEE;NULL;NULL;02 99 07 11 63;NULL;26243;NULL;
+254299;FX;GSB;A;35 ST GILLES;NULL;NULL;02 99 64 83 73;NULL;26251;NULL;
+254300;FX;COLOMAT;A;86 LOUDUN;NULL;NULL;05 49 98 56 29;NULL;26265;NULL;
+254301;FX;FRABOULET SARL;A+;22 TREVE;NULL;NULL;02 96 28 63 58;NULL;26280;NULL;
+254302;FX;SLC ALUFER;A;44 PORNIC;NULL;NULL;02 40 82 68 84;NULL;26285;NULL;
+254303;FX;LEBRETON MICHEL;A;49 LE LOUROUX;NULL;NULL;02 41 77 48 31;NULL;26288;NULL;
+254304;FX;BOUAISSIER PATRICE;A;35 SAINT AUBI;NULL;NULL;02 99 55 50 01;NULL;26291;NULL;
+254305;FX;ALUMINIUM CONFORT SYSTEMS;A;92 ANTONY;NULL;NULL;01 40 96 86 86;NULL;26293;NULL;
+254306;FX;GEDIMAT DATAS;A;32 SEISSAN;NULL;NULL;05 62 86 25 40;NULL;26295;NULL;
+254307;FX;RIBEAUD;A+;38 CHARAVINES;NULL;NULL;04 76 55 60 80;ribeaud.menuiserie(a)wanadoo.fr;26298;NULL;
+254308;FX;RIBEAUD;A+;38 CHARAVINES;NULL;NULL;04 76 55 60 80;NULL;26298;NULL;
+254309;FX;STORES SUD SERVICES 3S 4262;NULL;20 MEZZAVIA;NULL;NULL;04 95 10 62 60;NULL;26299;NULL;
+254310;FX;CHANTELAUZE PHILIPPE;D;63 LA FORIE;NULL;NULL;04 73 82 18 29;NULL;26303;NULL;
+254311;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;mauvertex.brigitte(a)wanadoo.fr;26304;NULL;
+254312;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;NULL;26304;NULL;
+254313;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;0 ;mauvertex.christophe(a)orange.fr;26304;NULL;
+254314;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;mauvertex.nicole(a)wanadoo.fr;26304;NULL;
+254315;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;0 ;mauvertex.paule(a)wanadoo.fr;26304;NULL;
+254316;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;0 ;mauvertex.frederic(a)wanadoo.fr;26304;NULL;
+254317;FX;MAUVERTEX NBM;D;12 RODEZ;NULL;NULL;05 65 67 42 06;mauvertex.thomas(a)wanadoo.fr;26304;NULL;
+254318;FX;PAGOT SAVOIE MATERIAUX;A;39 Salins-les;NULL;NULL;03 25 32 02 08;NULL;26309;NULL;
+254319;FX;PAGOT SAVOIE MATERIAUX;A;39 Salins-les;NULL;NULL;03 84 33 47 51;morbier(a)pagot-savoie.fr;26309;NULL;
+254320;FX;PAGOT SAVOIE MATERIAUX;A;39 Salins-les;NULL;NULL;03 84 71 87 02;NULL;26309;NULL;
+254321;FX;VMA (VITRERIE MIROITERIE;A+;74 CRANVES SA;NULL;NULL;04 50 36 76 32;NULL;26318;NULL;
+254322;FX;CALIFORNIA STORES 302864;NULL;CH 1024 ECUBL;NULL;NULL;412 16 91 54 15;NULL;26321;NULL;
+254323;FX;CALIFORNIA STORES 302864;NULL;CH 1024 ECUBL;NULL;NULL;02 16 91 54 15;NULL;26321;NULL;
+254324;FX;PERRET;D;69 CHASSIEU;NULL;NULL;04 72 13 35 25;NULL;26326;NULL;
+254325;FX;PERRET;D;69 CHASSIEU;NULL;NULL;04 72 13 35 25;eric(a)passionbois.com;26326;NULL;
+254326;FX;GILBERT DIDIER;A;45 SAINT JEAN;NULL;NULL;02 38 75 08 45;NULL;26335;NULL;
+254327;FX;METALAG 5051;A+;72 LOUE;NULL;NULL;02 43 88 62 00;NULL;26337;NULL;
+254328;FX;INVERSIONES MARTINICA SA;NULL;CO I;NULL;NULL;0 ;NULL;26339;NULL;
+254329;FX;EMG STORES;A+;68 HESINGUE;NULL;NULL;03 89 69 57 00;ferraro-marcello(a)hotmail.fr;26343;NULL;
+254330;FX;EMG STORES;A+;68 HESINGUE;NULL;NULL;03 89 69 57 00;NULL;26343;NULL;
+254331;FX;EMG STORES;A+;68 HESINGUE;NULL;NULL;03 89 69 57 00;stores.emg2(a)wanadoo.fr;26343;NULL;
+254332;FX;LALANDE LIONEL - DIS.PRO.BAT;A+;70 RIOZ;NULL;NULL;03 84 91 73 43;NULL;26344;NULL;
+254333;FX;ARCARENOV;A+;93 NOISY LE S;NULL;NULL;01 48 10 97 62;NULL;26349;NULL;
+254334;FX;KREMBEL RAYMOND;A;68 DANNEMARIE;NULL;NULL;03 89 25 17 29;NULL;26354;NULL;
+254335;FX;EGELIS;A;93 BAGNOLET;NULL;NULL;01 43 02 05 80;NULL;26357;NULL;
+254336;FX;SAINT AMAND MATERIAUX GEDIMAT;NULL;18 SAINT AMAN;NULL;NULL;02 48 96 14 07;NULL;26359;NULL;
+254337;FX;POL AGRET;A;63 CLERMONT F;NULL;NULL;04 73 90 92 79;NULL;26363;NULL;
+254338;FX;ALPHA ALUMINIUM;A;13 MARSEILLE;NULL;NULL;04 91 70 94 14;NULL;26367;NULL;
+254339;FX;ARZEL;A;02 CHATEAU TH;NULL;NULL;03 23 83 01 00;NULL;26377;NULL;
+254340;FX;ARZEL;A;02 CHATEAU TH;NULL;NULL;03 23 83 01 00;arzel(a)arzel.fr;26377;NULL;
+254341;FX;THEVENET JEAN;B;38 ST CLAIR D;NULL;NULL;04 74 97 15 15;NULL;26380;NULL;
+254342;FX;FERMETURES MORATIN;A+;93 ROMAINVILL;NULL;NULL;01 48 45 70 81;NULL;26385;NULL;
+254343;FX;CHARDON PATRICK;A;18 BOURGES;NULL;NULL;02 48 25 95 54;NULL;26388;NULL;
+254344;FX;POULIN PATRICE;A;45 SARAN;NULL;NULL;02 38 65 93 94;NULL;26391;NULL;
+254345;FX;COGECEM SAS;A;45 ST JEAN DE;NULL;NULL;02 38 88 77 06;NULL;26394;NULL;
+254346;FX;POINT P BMSO PERIGUEUX;A+;24 PERIGUEUX;NULL;NULL;05 53 54 69 18;NULL;26401;NULL;
+254347;FX;INTER STORE;A+;68 HABSHEIM;NULL;NULL;03 89 31 86 49;NULL;26404;NULL;
+254348;FX;BACHIMONT;A;28 TOURY;NULL;NULL;02 37 90 55 90;NULL;26409;NULL;
+254349;FX;HARMONIE DECOR STE NELLE;B;73 CHALLES LE;NULL;NULL;04 79 72 76 36;NULL;26414;NULL;
+254350;FX;BORELLA VOGUE DECORATION;B;CH 1207 GENEV;NULL;NULL;412 27 00 16 75;borellavoguedeco(a)bluewin.ch;26415;NULL;
+254351;FX;PHILIPPI CAB;A+;67 OBERNAI;NULL;NULL;03 88 95 06 65;NULL;26417;NULL;
+254352;FX;DELAHAYES JEAN PAUL;A+;35 BECHEREL;NULL;NULL;02 99 66 77 98;NULL;26423;NULL;
+254353;FX;PERRAUD ANCIENS ETS.;A;44 BOUGUENAIS;NULL;NULL;02 51 70 64 65;ae.perraud(a)wanadoo.fr;26426;NULL;
+254354;FX;FRANCHET (STE NOUVELLE) 5049;A+;37 CHAMBRAY L;NULL;NULL;0 ;NULL;26429;NULL;
+254355;FX;RENOV BAIE (BAIE RENOVEES 4581;NULL;92 LEVALLOIS;NULL;NULL;01 47 57 80 65;NULL;26431;NULL;
+254356;FX;AMA ATELIER;A;41 ROMORANTIN;NULL;NULL;02 54 76 50 07;NULL;26432;NULL;
+254357;FX;HEURTEBIZE ETS LA ROCHE STORE;A+;16 LA ROCHEFO;NULL;NULL;05 45 62 15 19;NULL;26433;NULL;
+254358;FX;PREVOT SAS;A;24 BERGERAC;NULL;NULL;05 53 57 65 02;NULL;26448;NULL;
+254359;FX;GUILLEMOT MENUISERIE;B;89 CHEMILLY S;NULL;NULL;03 86 40 11 20;NULL;26454;NULL;
+254360;FX;GEDIMAT TERRAL;A;81 LACAUNE;NULL;NULL;05 63 37 11 10;NULL;26455;NULL;
+254361;FX;CUBIZOLLES;A;15 MASSIAC;NULL;NULL;04 71 23 04 25;NULL;26458;NULL;
+254362;FX;NICOLAU FRERES;A;66 BANUYLS SU;NULL;NULL;04 68 88 19 92;NULL;26462;NULL;
+254363;FX;DURIEUX 4332;NULL;92 CHATENAY M;NULL;NULL;01 46 32 97 71;NULL;26464;NULL;
+254364;FX;RASPAUD XAVIER - REV STORES;A+;38 VEYSSILIEU;NULL;NULL;0 ;xavier.raspaud(a)wanadoo.fr;26466;NULL;
+254365;FX;CAMPS 4760;A;64 COARRAZE;NULL;NULL;05 59 61 24 88;NULL;26475;NULL;
+254366;FX;BRENNER-LOEGEL CLAUDE;A;14 MAIZIERES;NULL;NULL;02 31 90 08 01;NULL;26479;NULL;
+254367;FX;CROSET HERVE;B;74 ANNECY LE;NULL;NULL;04 50 23 63 98;NULL;26488;NULL;
+254368;FX;BOUSQUET;A;34 LA GRANDE;NULL;NULL;04 67 56 37 80;NULL;26491;NULL;
+254369;FX;RENOV'HABITAT;NULL;50 LA HAYE DU;NULL;NULL;02 33 45 60 05;NULL;26498;NULL;
+254370;FX;LYON SOLS - M. COUSSEIROUX;A;69 LYON;NULL;NULL;04 78 29 06 24;NULL;26512;NULL;
+254371;FX;APE ENSEIGNES;A;42 BONSON;NULL;NULL;04 77 41 06 01;NULL;26522;NULL;
+254372;FX;NORD MENUISERIE DIFFUSION;NULL;59 FEIGNIES;NULL;NULL;03 27 62 54 35;NULL;26528;NULL;
+254373;FX;ATELIER DE METALLERIE;A;92 VANVES CED;NULL;NULL;01 46 44 16 50;NULL;26543;NULL;
+254374;FX;MONTEIL BRUNO;D;86 ST GERVAIS;NULL;NULL;05 49 23 18 65;NULL;26546;NULL;
+254375;FX;AGEMA;A;41 BLOIS;NULL;NULL;02 54 74 85 26;NULL;26549;NULL;
+254376;FX;INDIGO;A+;94 ST MAUR DE;NULL;NULL;01 45 11 89 48;NULL;26551;NULL;
+254377;FX;MASSON AGENCEMENT;A;42 SAINT CHAM;NULL;NULL;04 77 31 47 13;NULL;26555;NULL;
+254378;FX;WOLSELEY RESEAU PRO THOUARS;NULL;79 THOUARS;NULL;NULL;0 ;NULL;26565;NULL;
+254379;FX;BLANCHET BRUNO;A;87 LE DORAT;NULL;NULL;05 55 60 74 91;NULL;26573;NULL;
+254380;FX;CPAB - CENTRE PROTECTION;A;42 ST ETIENNE;NULL;NULL;04 77 47 11 84;cpabjpm(a)cegetel.net;26578;NULL;
+254381;FX;DEBOUT RICHARD;NULL;45 SARAN;NULL;NULL;02 38 73 61 92;NULL;26581;NULL;
+254382;FX;TFB 2000 - TOUTES;A;38 ECHIROLLES;NULL;NULL;04 76 25 89 42;NULL;26582;NULL;
+254383;FX;VOILUX RJ;NULL;94 SAINT MAND;NULL;NULL;01 43 74 09 64;NULL;26585;NULL;
+254384;FX;S2S STORE SIGNALETIQUE SERVICE;D;94 ST MAUR DE;NULL;NULL;01 48 89 32 95;NULL;26595;NULL;
+254385;FX;ROQ'ALU;B;34 ROUJAN;NULL;NULL;04 67 38 19 37;NULL;26598;NULL;
+254386;FX;ABCS;A;94 ALFORTVILL;NULL;NULL;01 48 99 61 00;NULL;26621;NULL;
+254387;FX;ATP 77 - APPLICATION;A;77 VILLEMAREC;NULL;NULL;01 60 96 59 95;NULL;26622;NULL;
+254388;FX;LPI;A;69 SAINT PRIE;NULL;NULL;04 78 21 76 42;NULL;26628;NULL;
+254389;FX;LPI;A;69 SAINT PRIE;NULL;NULL;04 50 51 34 08;NULL;26628;NULL;
+254390;FX;JAN DIDIER;A;56 VANNES;NULL;NULL;02 97 40 93 07;NULL;26632;NULL;
+254391;FX;ELECT FERMETURES;A;94 LE PLESSIS;NULL;NULL;01 64 61 05 72;NULL;26636;NULL;
+254392;FX;ELECT FERMETURES;A;94 LE PLESSIS;NULL;NULL;01 45 76 19 40;NULL;26636;NULL;
+254393;FX;BERTAUD SYLVAIN ENTREPRISE SAR;A;86 ITEUIL;NULL;NULL;05 49 52 85 47;NULL;26642;NULL;
+254394;FX;ERTON - EURL SOFATIS;B;22 PERROS GUI;NULL;NULL;02 96 91 23 90;NULL;26643;NULL;
+254395;FX;MATERIAUX CLAMECYCOIS;A;58 CLAMECY;NULL;NULL;03 86 27 02 44;NULL;26646;NULL;
+254396;FX;VITRERIE SAVOYARDE;A+;74 SEYNOD;NULL;NULL;04 50 52 17 77;NULL;26648;NULL;
+254397;FX;ACB AGENCE COMMERCIALE BATIMEN;B;07 ANNONAY;NULL;NULL;04 75 67 90 82;NULL;26651;NULL;
+254398;FX;CORS AMENAGEMENT;B;20 BIGUGLIA;NULL;NULL;04 95 31 30 30;marie(a)buro2b.net;26657;NULL;
+254399;FX;CORS AMENAGEMENT;B;20 BIGUGLIA;NULL;NULL;04 95 31 30 30;buro2b(a)buro2b.net;26657;NULL;
+254400;FX;THERMADOME;A;03 CREUZIER L;NULL;NULL;04 70 97 05 12;NULL;26658;NULL;
+254401;FX;THERMADOME;A;03 CREUZIER L;NULL;NULL;04 70 59 63 75;NULL;26658;NULL;
+254402;FX;BLEVIN YVON;A;22 PLENEUF VA;NULL;NULL;0 ;blevin.yvon(a)orange.fr;26659;NULL;
+254403;FX;ESPACE ALUMINIUM;B;97 KOUROU;NULL;NULL;05 94 32 62 86;NULL;26662;NULL;
+254404;FX;ESPACE ALUMINIUM;B;97 KOUROU;NULL;NULL;05 94 32 62 86;espace-alu(a)wanadoo.fr;26662;NULL;
+254405;FX;VERALUTEC;A;47 FRANCESCAS;NULL;NULL;05 62 68 47 87;NULL;26666;NULL;
+254406;FX;CL DIVERS DG;NULL;45 CHECY;NULL;NULL;0 ;NULL;26670;NULL;
+254407;FX;LANFRANCHI - DECOSTORE;A;78 VELIZY;NULL;NULL;01 30 70 80 71;NULL;26673;NULL;
+254408;FX;SINFAL;NULL;74 EVIAN;NULL;NULL;0 ;NULL;26675;NULL;
+254409;FX;GEDIMAT HOCHET VALOGNES;A;50 EQUEURDREV;NULL;NULL;02 33 21 66 60;NULL;26681;NULL;
+254410;FX;POINT P BMSO;A;17 ROCHEFORT;NULL;NULL;05 46 87 10 39;NULL;26685;NULL;
+254411;FX;SAMMOB BATIMENT INDUSTRIE;NULL;93 NOISY LE G;NULL;NULL;01 43 05 67 96;NULL;26702;NULL;
+254412;FX;L ESPACE DU VERRE;A;06 NICE;NULL;NULL;04 93 55 97 50;NULL;26706;NULL;
+254413;FX;ABER CONFORT 4452;NULL;10 STE SAVINE;NULL;NULL;03 25 78 37 37;NULL;26728;NULL;
+254414;FX;LAPOUJADE BERNARD;A;47 ESTILLAC;NULL;NULL;05 53 87 60 15;NULL;26729;NULL;
+254415;FX;MEUBLES 3A;D;74 SALLANCHES;NULL;NULL;04 50 93 75 74;NULL;26744;NULL;
+254416;FX;MENUISERIE LENOBLE;A+;73 ALBERTVILL;NULL;NULL;04 79 37 70 12;NULL;26763;NULL;
+254417;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;35 VEZIN LE C;NULL;NULL;02 99 14 54 74;NULL;26767;NULL;
+254418;FX;MIROITERIE DE L'OUEST ARMORIQU;A+;35 VEZIN LE C;NULL;NULL;02 99 14 60 91;NULL;26767;NULL;
+254419;FX;EPS (ENTREPRISE PARISIEN-;A;95 EAUBONNE;NULL;NULL;01 39 59 86 10;NULL;26772;NULL;
+254420;FX;CHEF CHRISTOPHE;A;02 LAON;NULL;NULL;03 23 79 67 46;NULL;26779;NULL;
+254421;FX;CHAZELLE;A;42 ST ETIENNE;NULL;NULL;04 77 32 53 10;NULL;26786;NULL;
+254422;FX;UNAFERM;A;68 ASPACH;NULL;NULL;03 89 40 99 44;NULL;26790;NULL;
+254423;FX;REUTTER FERMETURES;A;68 WITTENHEIM;NULL;NULL;03 89 53 72 98;NULL;26791;NULL;
+254424;FX;CHERRIER ALAIN 4171;NULL;37 JOUE LES T;NULL;NULL;02 47 67 58 59;NULL;26794;NULL;
+254425;FX;TROUILLARD POINT P PDL OLONNE SUR MER;A;85 OLONNE SUR;NULL;NULL;02 51 32 86 05;NULL;26798;NULL;
+254426;FX;FIGIEL XAVIER;NULL;59 LE CATEAU;NULL;NULL;03 27 77 98 03;NULL;26802;NULL;
+254427;FX;MENUISERIE JAY;B;73 COGNIN;NULL;NULL;04 79 69 01 42;NULL;26807;NULL;
+254428;FX;FAUCHER ANDRE;D;63 BESSE ET S;NULL;NULL;04 73 79 57 33;NULL;26815;NULL;
+254429;FX;ATELIER DU STORE 4677;NULL;94 SAINT MAUR;NULL;NULL;01 48 89 16 92;NULL;26816;NULL;
+254430;FX;FERDALU;A;13 MARSEILLE;NULL;NULL;04 91 58 65 53;NULL;26820;NULL;
+254431;FX;FERDALU;A;13 MARSEILLE;NULL;NULL;04 91 58 65 53;ferdalu(a)wanadoo.fr;26820;NULL;
+254432;FX;ANJOU CONFORT 4919;A+;49 ST MARTIN;NULL;NULL;02 41 39 58 01;NULL;26822;NULL;
+254433;FX;SODAI;A;69 BRON CEDEX;NULL;NULL;04 78 26 85 60;NULL;26825;NULL;
+254434;FX;MIROITERIE AVALLONNAISE;A;89 MAGNY;NULL;NULL;03 86 33 19 91;NULL;26826;NULL;
+254435;FX;MIROITERIE AVALLONNAISE;A;89 MAGNY;NULL;NULL;03 86 33 06 09;NULL;26826;NULL;
+254436;FX;REYNAUD CAUVIN YVOSE;A+;71 LOUHANS;NULL;NULL;03 85 75 47 39;NULL;26829;NULL;
+254437;FX;COMPTOIR DES MATERIAUX;NULL;27 BRIONNE;NULL;NULL;02 32 44 09 73;NULL;26832;NULL;
+254438;FX;MIROITERIE BERTRAND;A+;65 LOURDES;NULL;NULL;05 62 94 57 90;NULL;26839;NULL;
+254439;FX;MIROITERIE BERTRAND;A+;65 LOURDES;NULL;NULL;05 62 94 57 90;miroiterie(a)miroiterie-bertrand.com;26839;NULL;
+254440;FX;POLYCLOSE HABIMAT;A+;62 Annequin;NULL;NULL;03 21 64 94 45;NULL;26841;NULL;
+254441;FX;MUNCH;A+;68 GUEWENHEIM;NULL;NULL;03 89 82 88 89;NULL;26849;NULL;
+254442;FX;ROSFELDER;D;67 VALFF;NULL;NULL;03 88 08 40 04;NULL;26853;NULL;
+254443;FX;EPL - ELECTRICITE PLAFOND;A;93 LE BOURGET;NULL;NULL;01 48 36 34 34;NULL;26854;NULL;
+254444;FX;FERMETURES MICHEL SIMON;A;77 CHELLES;NULL;NULL;01 64 72 98 93;NULL;26855;NULL;
+254445;FX;LENUD JEAN MARIE;B;27 FLEURY SUR;NULL;NULL;02 32 49 59 28;NULL;26863;NULL;
+254446;FX;AMF ATELIER METALLIQUE;A;93 AUBERVILLI;NULL;NULL;01 48 34 43 64;NULL;26869;NULL;
+254447;FX;CLESTRA HAUSERMANN;A;92 MALAKOFF;NULL;NULL;03 88 28 12 28;NULL;26872;NULL;
+254448;FX;HALLES DECO;B;CM ALA;NULL;NULL;23 73 43 22 98;hallesdeco(a)yahoo.fr;26882;NULL;
+254449;FX;HALLES DECO;B;CM ALA;NULL;NULL;0 ;NULL;26882;NULL;
+254450;FX;LEPINAY PIERRE;A;35 POLIGNE;NULL;NULL;02 99 43 94 61;NULL;26884;NULL;
+254451;FX;MVN - MIROITERIE VITRERIE;B;28 NOGENT LE;NULL;NULL;02 37 52 11 09;NULL;26907;NULL;
+254452;FX;BARBIER PASCAL EURL;B;58 RAVEAU;NULL;NULL;03 86 70 27 52;NULL;26908;NULL;
+254453;FX;MIROITERIE JAMOS;A;42 ST JEAN BO;NULL;NULL;04 77 33 86 78;NULL;26913;NULL;
+254454;FX;LE NAIR PIERRE;D;35 MEILLAC;NULL;NULL;02 99 73 31 64;pierre.le.nair(a)wanadoo.fr;26919;NULL;
+254455;FX;POINT P BRETAGNE PAIMPOL;A;22 PAIMPOL;NULL;NULL;02 96 22 09 13;NULL;26921;NULL;
+254456;FX;ISOLSTORES;A;18 BOURGES;NULL;NULL;02 48 67 93 83;NULL;26937;NULL;
+254457;FX;CL DIVERS SUD OUEST P.HAUCHECO;NULL;45 ORLEANS;NULL;NULL;02 99 14 86 39;NULL;26946;NULL;
+254458;FX;WEISZ;A+;92 FONTENAY A;NULL;NULL;01 47 02 04 55;NULL;26949;NULL;
+254459;FX;WEISZ;A+;92 FONTENAY A;NULL;NULL;01 47 02 04 55;e.gyalay(a)weisz.fr;26949;NULL;
+254460;FX;STORALIL;B;59 LA MADELEI;NULL;NULL;03 20 06 35 38;NULL;26954;NULL;
+254461;FX;SERRURERIE ALLAIN;A;44 NANTES;NULL;NULL;02 51 13 66 14;NULL;26958;NULL;
+254462;FX;MODULES ENSEIGNES;D;35 BREAL SOUS;NULL;NULL;02 99 60 03 48;NULL;26964;NULL;
+254463;FX;ASTEL MENUISERIE;A;10 MARIGNY LE;NULL;NULL;03 25 21 80 81;NULL;26966;NULL;
+254464;FX;DETOURBET 5103;A;52 VOISINES;NULL;NULL;03 25 87 10 33;sasdetourbet(a)wanadoo.fr;26970;NULL;
+254465;FX;DETOURBET 5103;A;52 VOISINES;NULL;NULL;03 25 87 10 33;NULL;26970;NULL;
+254466;FX;SCAN;A;31 BLAGNAC;NULL;NULL;05 61 15 61 02;NULL;26979;NULL;
+254467;FX;ARTIS ARTIS;D;75 PARIS;NULL;NULL;01 43 56 21 81;NULL;26983;NULL;
+254468;FX;ACTI VITRERIE SERRURERIE;A;78 POISSY;NULL;NULL;01 30 74 73 02;NULL;26987;NULL;
+254469;FX;CHAUSSON TRIALIS BOLLENE;NULL;84 VALREAS CE;NULL;NULL;04 90 30 46 24;NULL;26989;NULL;
+254470;FX;DECORATION LITT;NULL;67 GRIESHEIM;NULL;NULL;03 88 08 42 53;NULL;26991;NULL;
+254471;FX;COMASUD ST RAPHAEL;A+;83 BRIGNOLES;NULL;NULL;04 94 82 25 42;NULL;27004;NULL;
+254472;FX;COMASUD GIGNAC;A+;83 BRIGNOLES;NULL;NULL;04 42 31 47 62;NULL;27018;NULL;
+254473;FX;HORIZON OUEST;NULL;29 BREST;NULL;NULL;02 98 43 80 73;NULL;27020;NULL;
+254474;FX;LE MIROIR DU PAVIN;A+;63 BESSE ET S;NULL;NULL;04 73 79 65 48;NULL;27023;NULL;
+254475;FX;AREHAL;A;95 SANNOIS;NULL;NULL;01 39 80 69 43;NULL;27026;NULL;
+254476;FX;LEBLANC ENTREPRISE 5055;A+;53 ERNEE;NULL;NULL;02 43 05 96 32;NULL;27028;NULL;
+254477;FX;LEBLANC ENTREPRISE 5055;A+;53 ERNEE;NULL;NULL;02 43 05 72 52;NULL;27028;NULL;
+254478;FX;VACHER FILS;A+;41 ROMORANTIN;NULL;NULL;02 54 76 51 01;NULL;27029;NULL;
+254479;FX;MERLE;D;24 TERRASSON;NULL;NULL;05 53 51 15 21;NULL;27030;NULL;
+254480;FX;ETABLISSEMENTS CANAC BOURCIER;A+;48 Mende;NULL;NULL;04 66 47 35 04;NULL;27035;NULL;
+254481;FX;ETABLISSEMENTS CANAC BOURCIER;A+;48 Mende;NULL;NULL;04 66 47 35 04;sarlcanac-bourcier(a)orange.fr;27035;NULL;
+254482;FX;LOUISIANE;NULL;22 LOUDEAC;NULL;NULL;02 96 66 13 50;NULL;27041;NULL;
+254483;FX;BASSET BOUVY BATIMENT;A;69 BRINDAS;NULL;NULL;04 78 45 60 36;NULL;27046;NULL;
+254484;FX;ATELIER PIERRICK RAGOT;NULL;44 NANTES;NULL;NULL;02 40 46 63 02;NULL;27048;NULL;
+254485;FX;MEUNIER ERIC;A;95 CERGY;NULL;NULL;01 34 25 01 14;NULL;27052;NULL;
+254486;FX;ALU PROJECT;A+;82 NEGREPELIS;NULL;NULL;05 63 30 85 60;NULL;27053;NULL;
+254487;FX;FERMETURE 2000 4694;A;38 RENAGE;NULL;NULL;04 76 91 01 57;NULL;27055;NULL;
+254488;FX;STORES ET FERMETURES;NULL;44 TRIGNAC;NULL;NULL;02 51 10 56 64;NULL;27056;NULL;
+254489;FX;PERSIANAS EL AVILA, C.A.;A;10 070 CARAC;NULL;NULL;5821 22 51 14 62;NULL;27061;NULL;
+254490;FX;VITRERIE MIROITERIE DES ALPES;A+;73 LE VIVIER;NULL;NULL;04 79 61 67 07;NULL;27083;NULL;
+254491;FX;SORECSO 4387;NULL;36 ST BENOIT;NULL;NULL;02 54 47 67 13;NULL;27103;NULL;
+254492;FX;VERANDALUX;A;26 LAVEYRON;NULL;NULL;0 ;NULL;27104;NULL;
+254493;FX;MENUISERIE VOLLMER;NULL;67 MELSHEIM;NULL;NULL;03 88 89 09 99;NULL;27111;NULL;
+254494;FX;MIROITERIE DU GAVE (EXPL);A;64 BAIGTS DE;NULL;NULL;05 59 65 32 94;NULL;27112;NULL;
+254495;FX;PENTAGONE MENUISERIES;A;04 SAINT TULL;NULL;NULL;04 92 72 51 60;NULL;27119;NULL;
+254496;FX;PERRIN MAZIER 999999;D;39 DOLE;NULL;NULL;03 84 82 13 97;ent.perrin-mazier(a)wanadoo.fr;27121;NULL;
+254497;FX;STORE OUEST;A;78 MAGNANVILL;NULL;NULL;01 34 78 56 26;NULL;27122;NULL;
+254498;FX;DIDIER;A+;51 REIMS;NULL;NULL;03 26 88 52 12;NULL;27128;NULL;
+254499;FX;REALMETAL;A+;68 WITTELSHEI;NULL;NULL;03 89 55 22 11;NULL;27130;NULL;
+254500;FX;LC BATIMENT;A;29 TAULE;NULL;NULL;02 98 79 03 82;NULL;27132;NULL;
+254501;FX;ANCEL;A;67 CHATENOIS;NULL;NULL;03 90 57 39 48;NULL;27135;NULL;
+254502;FX;PORTAL ALUMINIUM SYSTEMS;A+;13 La Ciotat;NULL;NULL;04 42 04 31 88;NULL;27138;NULL;
+254503;FX;GRANDO STORES BACHES;A;42 LA TALAUDI;NULL;NULL;04 77 47 51 66;NULL;27145;NULL;
+254504;FX;GUICHET E;A+;25 BESANCON;NULL;NULL;03 81 82 39 20;NULL;27152;NULL;
+254505;FX;FERNANDES JOAO;A;78 VERNOUILLE;NULL;NULL;01 39 71 71 14;NULL;27157;NULL;
+254506;FX;VMA FENETRIER;A+;74 Ville-la-G;NULL;NULL;04 50 71 91 45;NULL;27158;NULL;
+254507;FX;BORDEAUX STORES;NULL;33 CASTETS EN;NULL;NULL;05 56 62 73 73;NULL;27161;NULL;
+254508;FX;CHAPPUIS SARL;NULL;74 GROISY;NULL;NULL;04 50 68 04 75;NULL;27170;NULL;
+254509;FX;GERBER FRANCK;A;67 WASSELONNE;NULL;NULL;03 88 87 46 41;NULL;27172;NULL;
+254510;FX;LEVEQUE GILLES;A;61 BAGNOLES D;NULL;NULL;02 33 30 82 79;NULL;27175;NULL;
+254511;FX;BMCE POINT P CHATEAUROUX;A;36 CHATEAUROU;NULL;NULL;02 54 61 11 23;NULL;27177;NULL;
+254512;FX;BMCE POINT P BLOIS;B;41 BLOIS;NULL;NULL;0 ;NULL;27178;NULL;
+254513;FX;BMCE POINT P BLOIS;B;41 BLOIS;NULL;NULL;02 54 52 70 01;NULL;27178;NULL;
+254514;FX;BMCE POINT P ORLEANS;A;45 ORLEANS CE;NULL;NULL;02 43 35 43 76;NULL;27179;NULL;
+254515;FX;BMCE POINT P ROMORANTIN;A;41 ROMORANTIN;NULL;NULL;02 54 94 15 31;NULL;27180;NULL;
+254516;FX;ANJOU SERRURERIE;A;49 BRAIN SUR;NULL;NULL;02 41 54 99 09;NULL;27184;NULL;
+254517;FX;SCEMB 56;NULL;56 CAUDAN;NULL;NULL;02 97 76 92 87;NULL;27186;NULL;
+254518;FX;MEUBLES DE PARENTIS;NULL;40 PARENTIS E;NULL;NULL;05 58 78 53 22;NULL;27192;NULL;
+254519;FX;APSM;A+;41 BLOIS;NULL;NULL;02 54 78 83 07;NULL;27193;NULL;
+254520;FX;JOPPE SARL;D;LU 051 ESCH S;NULL;NULL;352 53 08 50 50;joppe(a)pt.lu;27195;NULL;
+254521;FX;COTTIER PASCAL PAM COTTIER;A;37 CHOUZE SUR;NULL;NULL;02 47 95 18 60;NULL;27198;NULL;
+254522;FX;JD SERVICES;A;56 AURAY;NULL;NULL;02 97 24 80 78;NULL;27206;NULL;
+254523;FX;EMIDIO FERREIRA;A;89 CHEVILLON;NULL;NULL;03 86 73 15 04;NULL;27208;NULL;
+254524;FX;MAGE YVAN;A;70 GRAY;NULL;NULL;03 84 65 47 40;NULL;27221;NULL;
+254525;FX;JB MENUISERIES;A+;70 ARC LES GR;NULL;NULL;03 84 65 32 77;NULL;27222;NULL;
+254526;FX;PASTANELLA FRANCOIS CLAUDIO;A+;05 GAP;NULL;NULL;04 92 53 70 55;NULL;27224;NULL;
+254527;FX;MAYOUFI;A;60 STE GENEVI;NULL;NULL;02 51 58 46 03;NULL;27236;NULL;
+254528;FX;BIG MAT BEREZIAT;A;71 MACON;NULL;NULL;03 85 30 32 56;NULL;27237;NULL;
+254529;FX;DRUFIN;A;45 ORLEANS;NULL;NULL;02 38 66 95 37;NULL;27239;NULL;
+254530;FX;FADIER;A;35 ARGENTRE D;NULL;NULL;02 23 55 01 91;NULL;27242;NULL;
+254531;FX;BARON;A+;53 CHANGE;NULL;NULL;02 43 49 25 02;NULL;27244;NULL;
+254532;FX;BARRERE GILLES;A;65 PINAS;NULL;NULL;05 62 40 28 52;NULL;27245;NULL;
+254533;FX;LALLIER AGENCEMENT;NULL;26 HAUTERIVES;NULL;NULL;04 75 68 55 50;NULL;27248;NULL;
+254534;FX;SCIANDRA BORIS;NULL;83 FREJUS;NULL;NULL;04 94 52 17 48;NULL;27249;NULL;
+254535;FX;ALU CONFORT;A+;20 BASTIA;NULL;NULL;04 95 30 65 62;contact(a)aluconfort.fr;27250;NULL;
+254536;FX;FRAUD DOMINIQUE - OUEST SELLERIE;A;35 LOHEAC;NULL;NULL;0 ;loheacsellerie(a)orange.fr;27264;NULL;
+254537;FX;BATIVER;D;65 IBOS;NULL;NULL;05 62 34 73 73;NULL;27266;NULL;
+254538;FX;SFP STORES FILMS PROTECTION;D;94 SAINT MAUR;NULL;NULL;01 48 83 67 82;NULL;27274;NULL;
+254539;FX;ESPACE SOLEIL;A+;58 COSNE SUR;NULL;NULL;03 86 26 95 66;espacesoleil58(a)orange.fr;27275;NULL;
+254540;FX;SMAC ACIEROID;A;31 TOULOUSE C;NULL;NULL;05 34 40 06 11;NULL;27279;NULL;
+254541;FX;BISES;D;78 Neauphlett;NULL;NULL;01 34 97 61 96;jht2(a)wanadoo.fr;27281;NULL;
+254542;FX;SFDR-SERRUR. FERRONNERIE;A;03 YZEURE;NULL;NULL;04 70 46 75 73;NULL;27286;NULL;
+254543;FX;KEREBEL PIERRE;NULL;29 GOUESNOU;NULL;NULL;02 98 37 97 23;NULL;27287;NULL;
+254544;FX;RIBOUT MICHEL;D;41 CELLETTES;NULL;NULL;02 54 70 42 26;NULL;27291;NULL;
+254545;FX;ZAKARIADES LAURENT;A+;20 AJACCIO;NULL;NULL;04 95 21 92 30;idealstores2(a)wanadoo.fr;27292;NULL;
+254546;FX;CONCEPTION MAINTENANCE 4538;NULL;93;NULL;NULL;01 41 58 56 57;NULL;27296;NULL;
+254547;FX;CONCEPTION MAINTENANCE 4538;NULL;93;NULL;NULL;01 48 56 56 57;c2m.montreuil(a)orange.fr;27296;NULL;
+254548;FX;EUROPLAST;A;52 CHALINDREY;NULL;NULL;03 25 88 99 01;NULL;27298;NULL;
+254549;FX;ROUSSEAU GUY;A;45 NEUVILLE A;NULL;NULL;02 38 91 82 16;NULL;27309;NULL;
+254550;FX;SAUVESTRE JEAN-LOUIS;A+;18 ST DOULCHA;NULL;NULL;02 48 65 11 34;jeanlouis.sauvestre(a)dbmail.com;27315;NULL;
+254551;FX;HOLGADO TORRES FRANCISCO VSF;A;63 AULNAT;NULL;NULL;04 73 60 30 99;NULL;27319;NULL;
+254552;FX;MIRAMOND ENTREPRISES;A;13 MARSEILLE;NULL;NULL;04 91 92 03 49;NULL;27322;NULL;
+254553;FX;DECOR SERVICE;A;92 MALAKOFF;NULL;NULL;01 42 53 88 09;NULL;27327;NULL;
+254554;FX;SHANTAKO;A;69 VILLEURBAN;NULL;NULL;0 ;NULL;27333;NULL;
+254555;FX;SHANTAKO;A;69 VILLEURBAN;NULL;NULL;04 72 04 54 26;NULL;27333;NULL;
+254556;FX;ECF ETUDE CONSTRUCTION;A;91 BRETIGNY S;NULL;NULL;01 60 85 30 76;NULL;27342;NULL;
+254557;FX;ECF ETUDE CONSTRUCTION;A;91 BRETIGNY S;NULL;NULL;01 60 85 30 76;e.c.f(a)wanadoo.fr;27342;NULL;
+254558;FX;CANCIANI JEAN VINCENT;A;69 VILLEURBAN;NULL;NULL;04 78 80 95 22;NULL;27347;NULL;
+254559;FX;AULNAY-GLACE;A;93 AULNAY SOU;NULL;NULL;01 48 79 92 07;NULL;27348;NULL;
+254560;FX;EC COM;A;94 ST MAUR DE;NULL;NULL;01 47 41 33 76;NULL;27350;NULL;
+254561;FX;CLAREO;A;10 MARIGNY LE;NULL;NULL;03 25 21 80 81;NULL;27351;NULL;
+254562;FX;FERMETURES & STORES DU;A;28 MEZIERES E;NULL;NULL;02 37 43 82 30;NULL;27352;NULL;
+254563;FX;LAURALU;A;94 ORMESSON S;NULL;NULL;0 ;lauralu(a)alicepro.fr;27353;NULL;
+254564;FX;TROUVE MICHEL;A;49 LIRE;NULL;NULL;02 40 09 91 73;NULL;27365;NULL;
+254565;FX;MECARAY;NULL;91 BONDOUFLE;NULL;NULL;01 60 86 40 76;NULL;27373;NULL;
+254566;FX;HUGUET CREICHE RJ;NULL;45 SAINT JEAN;NULL;NULL;02 38 22 38 20;NULL;27374;NULL;
+254567;FX;ACH 45 4897;NULL;45 CHECY;NULL;NULL;02 38 61 54 55;a.c.h.45(a)wanadoo.fr;27375;NULL;
+254568;FX;MEUNIER ET FILS;A;95 BERNE SUR;NULL;NULL;01 30 34 23 81;NULL;27376;NULL;
+254569;FX;LEROY MICHEL;B;83 BRIGNOLLES;NULL;NULL;04 94 72 01 15;NULL;27380;NULL;
+254570;FX;JCD MATERIAUX -;A;47 NERAC;NULL;NULL;05 53 97 09 44;NULL;27387;NULL;
+254571;FX;MONTIBELLER NICOLAS 4483;NULL;45 ORLEANS;NULL;NULL;02 38 66 39 98;NULL;27388;NULL;
+254572;FX;CICIARELLI ET FILS;A;30 CAISSARGUE;NULL;NULL;04 66 29 55 36;NULL;27391;NULL;
+254573;FX;RESEAU PRO BORDEAUX;NULL;33 BORDEAUX;NULL;NULL;05 56 43 17 96;NULL;27409;NULL;
+254574;FX;DU LEFF;A+;22 CHATELAUDR;NULL;NULL;02 96 74 11 23;NULL;27410;NULL;
+254575;FX;BOLLINGER 4723;NULL;68 VOGELSHEIM;NULL;NULL;03 89 72 97 21;NULL;27418;NULL;
+254576;FX;LA CLEF DU TEMPS;A;67 KILSTETT;NULL;NULL;03 88 96 67 63;NULL;27420;NULL;
+254577;FX;ATLANTIC SOUDURE 4510;NULL;17 LA ROCHELL;NULL;NULL;05 46 28 19 24;NULL;27425;NULL;
+254578;FX;GARNIER CLAUDE;D;35 POCE LES B;NULL;NULL;02 99 74 41 49;NULL;27426;NULL;
+254579;FX;SHMM STE HONFLEUR MENUIS METAL;A+;14 HONFLEUR C;NULL;NULL;02 31 89 09 50;NULL;27433;NULL;
+254580;FX;PERILLAT BERNARD;B;74 CHAPEIRY;NULL;NULL;04 50 68 26 20;NULL;27434;NULL;
+254581;FX;WURTH AIME;NULL;67 BOOTZHEIM;NULL;NULL;03 88 74 99 00;NULL;27439;NULL;
+254582;FX;MIROITERIE LAMOTHE;A;24 RIBERAC;NULL;NULL;05 53 90 00 17;NULL;27442;NULL;
+254583;FX;MPS MENUISERIE POSES;A;27 DAUBEUF PR;NULL;NULL;02 32 40 71 82;NULL;27445;NULL;
+254584;FX;AFL ART FENETRES LUMIERE;A+;45 AMILLY;NULL;NULL;02 38 89 42 47;NULL;27471;NULL;
+254585;FX;AFL ART FENETRES LUMIERE;A+;45 AMILLY;NULL;NULL;02 38 89 42 49;NULL;27471;NULL;
+254586;FX;DORAS ELCE MATERIAUX;NULL;52 LANGRES;NULL;NULL;03 25 87 34 19;NULL;27474;NULL;
+254587;FX;EFPE;A+;26 ST DONAT S;NULL;NULL;0 ;laurent.pollien(a)wanadoo.fr;27498;NULL;
+254588;FX;ED STORES SERRURERIE RJ;A;51 SAINT BRIC;NULL;NULL;03 26 07 24 63;NULL;27503;NULL;
+254589;FX;BIG MAT LABRUGUIERE;NULL;81 LABRUGUIER;NULL;NULL;05 63 74 20 41;NULL;27504;NULL;
+254590;FX;GRASSET SPORAFRIC;A+;CG POINTE NO;NULL;NULL;NULL;NULL;27505;NULL;
+254591;FX;GRASSET SPORAFRIC;A+;CG POINTE NO;NULL;NULL;331 73 76 91 11;jmlerondelle(a)sporafric.net;27505;NULL;
+254592;FX;GRASSET SPORAFRIC;A+;CG POINTE NO;NULL;NULL;02 42 94 47 36;contact(a)sporafric.net;27505;NULL;
+254593;FX;ELVIN;A+;18 BOURGES;NULL;NULL;02 48 48 19 18;o.chaumeau(a)elvin.fr;27508;NULL;
+254594;FX;ELVIN;A+;18 BOURGES;NULL;NULL;02 48 48 19 18;NULL;27508;NULL;
+254595;FX;AFL ANCIEN ETS FOESSEL PS;A;45 MONTARGIS;NULL;NULL;02 38 89 00 26;NULL;27511;NULL;
+254596;FX;AFL ANCIEN ETS FOESSEL PS;A;45 MONTARGIS;NULL;NULL;02 38 89 42 47;NULL;27511;NULL;
+254597;FX;FASQUEL 4413;NULL;83 LE THORONE;NULL;NULL;04 94 60 98 28;NULL;27514;NULL;
+254598;FX;RIDEAUX SERVICES FRANCE;A;69 CRAPONNE;NULL;NULL;04 78 57 95 68;NULL;27520;NULL;
+254599;FX;OMBRES ET STRUCTURES;B;26 ST PAUL LE;NULL;NULL;04 75 71 07 05;NULL;27522;NULL;
+254600;FX;SCHUMER & CIE 4499;NULL;51 SEZANNE;NULL;NULL;03 26 42 81 80;NULL;27523;NULL;
+254601;FX;SCHUMER & CIE 4499;NULL;51 SEZANNE;NULL;NULL;03 26 42 81 81;NULL;27523;NULL;
+254602;FX;COMERCIALIZADORA Y;B;CL TIAGO;NULL;NULL;0 ;osvaldo(a)toldosmacul.cl;27524;NULL;
+254603;FX;COMERCIALIZADORA Y;B;CL TIAGO;NULL;NULL;56 22 37 07 30;carla(a)toldomacul.cl;27524;NULL;
+254604;FX;COMERCIALIZADORA Y;B;CL TIAGO;NULL;NULL;56 22 37 07 30;sebastian(a)toldosmacul.cl;27524;NULL;
+254605;FX;DECORINA;B;CM ALA;NULL;NULL;237 33 42 84 72;NULL;27547;NULL;
+254606;FX;DECORINA;B;CM ALA;NULL;NULL;23 73 43 23 38;decorina(a)yahoo.fr;27547;NULL;
+254607;FX;DECORINA;B;CM ALA;NULL;NULL;23 73 42 84 72;decorinaa(a)yahoo.fr;27547;NULL;
+254608;FX;CCTR;A;69 GIVORS;NULL;NULL;0 ;NULL;27555;NULL;
+254609;FX;FORET;D;43 LEMPDES;NULL;NULL;04 71 76 58 05;gforet(a)foret-entreprise.fr;27567;NULL;
+254610;FX;FORET;D;43 LEMPDES;NULL;NULL;0 ;NULL;27567;NULL;
+254611;FX;CHAVIGNY BLOIS;B;41 BLOIS CEDE;NULL;NULL;02 54 20 85 46;NULL;27573;NULL;
+254612;FX;MENUI PRO;A+;42 ST PRIEST;NULL;NULL;04 77 79 67 19;NULL;27578;NULL;
+254613;FX;BAP FENETRES ET FERMETURE;A;75 PARIS;NULL;NULL;01 40 44 99 35;NULL;27581;NULL;
+254614;FX;ACTEA;A;67 WASSELONNE;NULL;NULL;03 88 59 14 07;NULL;27582;NULL;
+254615;FX;ACTEA;A;67 WASSELONNE;NULL;NULL;03 87 51 24 41;NULL;27582;NULL;
+254616;FX;LAFFEACH PHILIPPE;A;56 VANNES;NULL;NULL;0 ;NULL;27593;NULL;
+254617;FX;DEMANGEAU;D;44 LE LOROUX;NULL;NULL;02 40 36 52 74;NULL;27599;NULL;
+254618;FX;STORES FERMETURES;A+;18 BOURGES;NULL;NULL;02 48 50 74 52;NULL;27600;NULL;
+254619;FX;SMSL 4894;A+;50 AGNEAUX;NULL;NULL;02 33 77 35 31;NULL;27601;NULL;
+254620;FX;ACTI POSE 4780;A;42 SAINT ETIE;NULL;NULL;04 77 34 05 63;NULL;27603;NULL;
+254621;FX;SMAC 4334;NULL;78 MANTES LA;NULL;NULL;01 30 92 69 48;NULL;27608;NULL;
+254622;FX;TECHNI FERMETURES;A+;68 MULHOUSE;NULL;NULL;03 89 65 03 93;NULL;27610;NULL;
+254623;FX;AAA ALUMINIUM AUTOMATISME;D;97 REMIRE MON;NULL;NULL;05 94 35 47 63;aaa973(a)orange.fr;27614;NULL;
+254624;FX;AAA ALUMINIUM AUTOMATISME;D;97 REMIRE MON;NULL;NULL;05 94 35 63 75;micadom(a)orange.fr;27614;NULL;
+254625;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;09 74 76 23 75;NULL;27615;NULL;
+254626;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;09 74 76 15 81;NULL;27615;NULL;
+254627;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;01 47 06 60 25;NULL;27615;NULL;
+254628;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;npalatre(a)mpo-fen.fr;27615;NULL;
+254629;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;NULL;27615;NULL;
+254630;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;pferrion(a)mpofenetres.com;27615;NULL;
+254631;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 86;kjarry(a)mpo-fen.fr;27615;NULL;
+254632;FX;MPO FENETRES - DIVISION CHANTIER;A+;61 ALENCON;NULL;NULL;02 33 31 63 94;NULL;27615;NULL;
+254633;FX;CDC CONCEPTION DEVELOPP.;NULL;80 HUCHENNEVI;NULL;NULL;0 ;NULL;27617;NULL;
+254634;FX;CYPRIANAISE DE MENUISERIE;A;66 SAINT CYPR;NULL;NULL;04 68 21 32 60;NULL;27620;NULL;
+254635;FX;RESEAU PRO HONFLEUR;NULL;14 HONFLEUR;NULL;NULL;02 31 89 24 01;NULL;27621;NULL;
+254636;FX;POLISSET;NULL;41 LAMOTTE BE;NULL;NULL;0 ;NULL;27624;NULL;
+254637;FX;BMCE POINT P;A;23 LA SOUTERR;NULL;NULL;05 55 63 94 85;NULL;27626;NULL;
+254638;FX;LES ATELIERS DU BOIS;B;21 VARANGES;NULL;NULL;03 80 31 34 02;NULL;27629;NULL;
+254639;FX;JACKY SERRE;B;07 CHOMERAC;NULL;NULL;04 75 64 17 24;NULL;27638;NULL;
+254640;FX;SCOP CREABOIS;B;35 MONFORT SU;NULL;NULL;02 99 07 42 75;t.baudoin(a)creabois.net;27640;NULL;
+254641;FX;POINT P BRETAGNE ST POL;A;29 SAINT POL;NULL;NULL;02 98 15 85 21;NULL;27647;NULL;
+254642;FX;VILLEGAS;A+;74 MARGENCEL;NULL;NULL;04 50 72 72 55;NULL;27648;NULL;
+254643;FX;LE TOIT;A;61 ALENCON CE;NULL;NULL;02 33 27 15 69;NULL;27651;NULL;
+254644;FX;LE JAMTEL AGENCEMENTS;A;50 SAINT LO C;NULL;NULL;02 33 57 29 16;NULL;27658;NULL;
+254645;FX;LE JAMTEL AGENCEMENTS;A;50 SAINT LO C;NULL;NULL;0 ;NULL;27658;NULL;
+254646;FX;POMART MICHEL;NULL;62 MONCHY CAY;NULL;NULL;03 21 04 68 52;NULL;27660;NULL;
+254647;FX;WARGNIER;D;91 PARAY VIEI;NULL;NULL;01 69 38 40 48;NULL;27663;NULL;
+254648;FX;BOURGUIGNON MENUISERIE;B;38 BEAUVOIR D;NULL;NULL;04 74 58 69 39;NULL;27669;NULL;
+254649;FX;ISO ECO;A;95 CORMEILLES;NULL;NULL;01 34 50 10 87;NULL;27673;NULL;
+254650;FX;GENERATION SOLEIL;NULL;77 TOUQUIN;NULL;NULL;01 43 63 84 61;NULL;27675;NULL;
+254651;FX;POINT P BRETAGNE - SIEGE PERE;NULL;35 RENNES CED;NULL;NULL;02 99 65 20 22;NULL;27677;NULL;
+254652;FX;LEADERS POSE SERVICES;D;77 Emerainvil;NULL;NULL;01 60 17 28 11;NULL;27679;NULL;
+254653;FX;ALU VERRE 61;A;61 MORTREE;NULL;NULL;02 33 12 59 26;NULL;27681;NULL;
+254654;FX;JOURLIN TOUT FAIRE;B;42 FEURS;NULL;NULL;04 77 26 12 90;NULL;27682;NULL;
+254655;FX;VERANDAS ET HABITAT FAINS 5012;A+;50 ST SAMSON;NULL;NULL;02 33 55 95 57;NULL;27702;NULL;
+254656;FX;ZION ALU VITRERIE;A;60 JAUX;NULL;NULL;03 44 90 75 89;NULL;27705;NULL;
+254657;FX;CLOTURE SERVICE;A+;37 CHAMBRAY L;NULL;NULL;02 47 25 82 72;cloture.service(a)wanadoo.fr;27706;NULL;
+254658;FX;BMRA POINT P ROANNE;A;42 ROANNE CED;NULL;NULL;04 77 72 72 88;NULL;27714;NULL;
+254659;FX;ISOLATION SERVICE;A+;36 LE BLANC;NULL;NULL;02 54 37 94 24;isolation-service(a)orange.fr;27718;NULL;
+254660;FX;CLAIRESPACE;A;60 COMPIEGNE;NULL;NULL;03 44 23 00 03;NULL;27719;NULL;
+254661;FX;SODISTORES 4749;A;45 CHECY;NULL;NULL;02 38 46 63 27;sodistores(a)wanadoo.fr;27721;NULL;
+254662;FX;MAISON PARISOT;A;52 CHAUMONT;NULL;NULL;03 25 01 23 26;Maison.PARISOT(a)wanadoo.fr;27722;NULL;
+254663;FX;RESEAU PRO COMPIEGNE;NULL;60 COMPIEGNE;NULL;NULL;03 44 83 13 54;NULL;27724;NULL;
+254664;FX;BORELLO ISOCLAIR 302837;B;38 ST CLAIR D;NULL;NULL;04 74 97 17 04;tborello(a)borello-isoclair.com;27728;NULL;
+254665;FX;BORELLO ISOCLAIR 302837;B;38 ST CLAIR D;NULL;NULL;0 ;NULL;27728;NULL;
+254666;FX;TRUCHON;A;38 ST MARTIN;NULL;NULL;04 76 44 25 41;NULL;27729;NULL;
+254667;FX;AFMH AGENCEMENT FERMETURE;NULL;94 FRESNES;NULL;NULL;01 49 84 21 83;NULL;27730;NULL;
+254668;FX;AUDIT SECURITE;NULL;33 BORDEAUX;NULL;NULL;05 56 98 17 73;NULL;27731;NULL;
+254669;FX;AUDIT SECURITE;NULL;33 BORDEAUX;NULL;NULL;0 ;NULL;27731;NULL;
+254670;FX;LEMAIRE PHILIPPE;A;92 FONTENAY A;NULL;NULL;01 43 50 33 29;NULL;27733;NULL;
+254671;FX;MIROITERIE BRESTOISE 4709;NULL;29 BREST CEDE;NULL;NULL;02 98 02 78 51;NULL;27735;NULL;
+254672;FX;GLASREN;A;35 RENNES;NULL;NULL;02 99 54 55 92;NULL;27737;NULL;
+254673;FX;GALLEGO SELLERIE;A;87 LIMOGES;NULL;NULL;05 55 30 18 68;NULL;27749;NULL;
+254674;FX;VAL OISE FERM-SOLUTION STORES;NULL;93 AULNAY SOU;NULL;NULL;01 48 19 69 01;NULL;27750;NULL;
+254675;FX;METALLERIE LA BOISSIERE;A;93 MONTREUIL;NULL;NULL;01 48 59 02 97;NULL;27752;NULL;
+254676;FX;DEBAILLE JEAN CLAUDE;A;34 VENDARGUES;NULL;NULL;04 67 02 06 17;NULL;27755;NULL;
+254677;FX;DARGAUD STORES;B;71 MACON;NULL;NULL;03 85 29 15 89;NULL;27757;NULL;
+254678;FX;ABS PROTECTION;B;26 VALENCE;NULL;NULL;04 75 55 54 30;NULL;27767;NULL;
+254679;FX;MIROITERIE DIJONNAISE;B;21 MARSANNAY;NULL;NULL;03 80 73 30 78;NULL;27774;NULL;
+254680;FX;LA FRANCAISE MIROITERIE;A+;94 L'HAY LES;NULL;NULL;01 46 87 17 27;NULL;27780;NULL;
+254681;FX;LA FRANCAISE MIROITERIE;A+;94 L'HAY LES;NULL;NULL;01 46 87 80 23;NULL;27780;NULL;
+254682;FX;CHAUSSON MAT. CAUSSADE;NULL;31 FENOUILLET;NULL;NULL;05 63 65 18 00;NULL;27796;NULL;
+254683;FX;SCI DE L'AQUILON;A+;14 CAEN;NULL;NULL;02 31 86 70 80;NULL;27797;NULL;
+254684;FX;COUTOUX GILLES ET ETIENNE;D;50 GER;NULL;NULL;02 33 69 53 22;NULL;27801;NULL;
+254685;FX;MAILLET DENIS;A;77 COULOMMIER;NULL;NULL;01 64 03 64 68;NULL;27803;NULL;
+254686;FX;SARL DES PLATANES;D;35 MORDELLES;NULL;NULL;02 99 60 04 89;NULL;27805;NULL;
+254687;FX;MIROITERIE VALLANZASCA;A+;74 SALLANCHES;NULL;NULL;04 50 47 92 75;NULL;27809;NULL;
+254688;FX;LAIR BERNARD;NULL;50 ST CLEMENT;NULL;NULL;02 99 14 63 08;NULL;27810;NULL;
+254689;FX;RENOLUX 4423;NULL;77 OZOIR LA F;NULL;NULL;01 64 05 14 51;NULL;27814;NULL;
+254690;FX;PAILLON PHILIPPE;A;37 LA CELLE S;NULL;NULL;0 ;ph.paillon(a)wanadoo.fr;27815;NULL;
+254691;FX;AVIS MTX - TOUT FAIRE;A;22 LOUDEAC;NULL;NULL;02 96 28 08 80;NULL;27824;NULL;
+254692;FX;AMLOR;A;55 BELLEVILLE;NULL;NULL;03 29 84 82 82;NULL;27825;NULL;
+254693;FX;RAFFORT MATERIAUX;A;74 PASSY;NULL;NULL;04 50 58 56 76;NULL;27826;NULL;
+254694;FX;BARD;D;42 RENAISON;NULL;NULL;04 77 64 43 94;etablissements-bard(a)orange.fr;27830;NULL;
+254695;FX;SERRURERIE ADAM;A;75 PARIS;NULL;NULL;01 49 70 01 95;NULL;27832;NULL;
+254696;FX;HA SERVICES;A;34 AGDE;NULL;NULL;04 67 94 12 53;NULL;27833;NULL;
+254697;FX;BARRAU ISOLAT. SERVICE OUVRAGE;D;64 GAN;NULL;NULL;05 59 21 67 56;j.barrau.iso(a)orange.fr;27835;NULL;
+254698;FX;SMSM - SERVICE MAINTENANC;A;77 GUERARD;NULL;NULL;01 64 65 63 26;NULL;27840;NULL;
+254699;FX;SOLOSTORES;A+;77 FONTAINEBL;NULL;NULL;01 64 22 90 14;contact(a)solostores.com;27841;NULL;
+254700;FX;SOLOSTORES;A+;77 FONTAINEBL;NULL;NULL;01 64 22 23 14;contact(a)solostores.com;27841;NULL;
+254701;FX;TISSERANT MTX TOUT FAIRE;A;88 GERARDMER;NULL;NULL;03 29 63 24 39;NULL;27842;NULL;
+254702;FX;JOLLOIS;A;95 SAINT BRIC;NULL;NULL;01 39 92 48 68;NULL;27843;NULL;
+254703;FX;ACECAM;A;01 FAREINS;NULL;NULL;04 74 60 79 89;NULL;27855;NULL;
+254704;FX;IMC INDUSTRIALISE MODULAIR;A;30 ROCHEFORT;NULL;NULL;04 90 15 16 30;imc(a)imcbat.com;27864;NULL;
+254705;FX;IMC INDUSTRIALISE MODULAIR;A;30 ROCHEFORT;NULL;NULL;04 90 15 16 30;NULL;27864;NULL;
+254706;FX;CL DIVERS OUEST V. NOURISSON;NULL;22 R;NULL;NULL;0 ;NULL;27865;NULL;
+254707;FX;MARSALA JM;A;57 GUEBENHOUS;NULL;NULL;01 34 29 61 20;NULL;27876;NULL;
+254708;FX;BEKO LEFEVRE;A;60 NOINTEL;NULL;NULL;04 44 19 18 88;NULL;27877;NULL;
+254709;FX;LES MENUISIERS REUNIS 4921;B;57 THIONVILLE;NULL;NULL;03 82 56 66 88;NULL;27878;NULL;
+254710;FX;STORE NET BACHE;B;35 LIVRE SUR;NULL;NULL;0 ;NULL;27880;NULL;
+254711;FX;MENUISERIE BETHUYS;A;85 CHALLANS;NULL;NULL;02 51 49 83 34;NULL;27882;NULL;
+254712;FX;EUROP FERMETURES;A;92 LEVALLOIS;NULL;NULL;01 42 70 10 00;NULL;27885;NULL;
+254713;FX;CHAUVET FABRICE;D;17 SAINT PIER;NULL;NULL;05 46 47 45 07;NULL;27888;NULL;
+254714;FX;DE NARDA;B;57 ARS SUR MO;NULL;NULL;03 87 60 81 23;NULL;27891;NULL;
+254715;FX;DE NARDA;B;57 ARS SUR MO;NULL;NULL;03 87 77 77 61;NULL;27891;NULL;
+254716;FX;ANGELY 4482;NULL;75 PARIS;NULL;NULL;01 43 38 17 90;NULL;27892;NULL;
+254717;FX;FENETRES ET VERANDAS DE;A;86 POITIERS;NULL;NULL;05 49 38 35 04;NULL;27899;NULL;
+254718;FX;FALSON JACQUES;B;83 TOULON;NULL;NULL;0 ;NULL;27900;NULL;
+254719;FX;LA CONCIERGERIE;A;67 STRASBOURG;NULL;NULL;03 88 22 22 55;NULL;27910;NULL;
+254720;FX;COMAFRANC LURE;A+;70 Lure;NULL;NULL;03 88 67 33 32;NULL;27913;NULL;
+254721;FX;COMAFRANC LURE;A+;70 Lure;NULL;NULL;03 84 22 52 32;NULL;27913;NULL;
+254722;FX;COMAFRANC LURE;A+;70 Lure;NULL;NULL;0 ;lure(a)comafranc.fr;27913;NULL;
+254723;FX;ASTUS;A;67 WOLFISHEIM;NULL;NULL;03 88 76 14 40;NULL;27915;NULL;
+254724;FX;CL DIVERS PNE A.CHAFFIN;NULL;54 P;NULL;NULL;0 ;NULL;27916;NULL;
+254725;FX;LA FENESTRIERE;NULL;54 COSMES ET;NULL;NULL;0 ;NULL;27918;NULL;
+254726;FX;NOVABAT - NOUVELLES;A;13 BOUC BEL A;NULL;NULL;04 42 22 22 45;NULL;27919;NULL;
+254727;FX;GIRAUDEAU;A;60 NOYON;NULL;NULL;03 44 09 00 97;NULL;27924;NULL;
+254728;FX;MONTIER ERICK;A;84 VILLELAURE;NULL;NULL;04 90 09 95 46;NULL;27928;NULL;
+254729;FX;DONATONE PIERRE;NULL;95 ST BRICE S;NULL;NULL;01 39 92 14 09;NULL;27933;NULL;
+254730;FX;NEBOUT ET VALENTIN SARL;D;16 BARBEZIEUX;NULL;NULL;05 45 78 32 14;zouzou.neboutvalentin(a)wanadoo.fr;27938;NULL;
+254731;FX;NEBOUT ET VALENTIN SARL;D;16 BARBEZIEUX;NULL;NULL;05 45 78 32 14;NULL;27938;NULL;
+254732;FX;CHARBONNIER MARTIAL;A;84 LA TOUR D';NULL;NULL;0 ;NULL;27942;NULL;
+254733;FX;PLEIN JOUR 17 4579;NULL;17 AYTRE;NULL;NULL;05 46 34 20 25;NULL;27945;NULL;
+254734;FX;BONNEMAISON JEAN PIERRE;NULL;33 CREON;NULL;NULL;0 ;NULL;27948;NULL;
+254735;FX;BERNARD;A+;91 JANVILLE S;NULL;NULL;01 60 82 75 62;NULL;27949;NULL;
+254736;FX;BHV PARLY 2;A;78 LE CHESNAY;NULL;NULL;01 39 23 38 89;NULL;27952;NULL;
+254737;FX;BHV PARLY 2;A;78 LE CHESNAY;NULL;NULL;01 39 23 34 87;NULL;27952;NULL;
+254738;FX;BHV CRETEIL;D;94 CRETEIL CE;NULL;NULL;01 49 60 45 64;NULL;27955;NULL;
+254739;FX;BHV MONTLHERY;D;91 MONTLHERY;NULL;NULL;01 49 60 46 65;NULL;27956;NULL;
+254740;FX;BHV VILLENEUVE LA GARENNE;D;92 VILLENEUVE;NULL;NULL;01 47 92 30 45;NULL;27958;NULL;
+254741;FX;BHV SAINT GENIS LAVAL;A;69 ST GENIS L;NULL;NULL;04 78 56 40 67;NULL;27960;NULL;
+254742;FX;BHV LIMONEST;D;69 LIMONEST C;NULL;NULL;04 78 35 66 44;NULL;27962;NULL;
+254743;FX;BOBAULT BERNARD;A;41 MAZANGE;NULL;NULL;02 54 72 08 57;NULL;27968;NULL;
+254744;FX;PARIS RIDEAUX;A;94 ALFORTVILL;NULL;NULL;01 43 75 40 14;contact(a)paris-rideaux.fr;27969;NULL;
+254745;FX;ATELIERS C;A;11 MONTFERRAN;NULL;NULL;04 68 60 53 16;NULL;27971;NULL;
+254746;FX;MESMIN;A;19 OBJAT;NULL;NULL;05 55 25 55 07;NULL;27972;NULL;
+254747;FX;MENUISERIE TOUT ALU;D;31 PECHBONNIE;NULL;NULL;05 67 00 70 89;NULL;27980;NULL;
+254748;FX;CHARRETON - ETS FENETRES;A;78 LA SEINE S;NULL;NULL;01 42 00 01 23;NULL;27983;NULL;
+254749;FX;VITRAFRANCE 4504;NULL;45 SULLY SUR;NULL;NULL;02 38 36 49 62;NULL;27984;NULL;
+254750;FX;TECHNIBAIE;D;92 BOULOGNE B;NULL;NULL;01 46 04 03 23;NULL;27986;NULL;
+254751;FX;CL DIVERS SUD EST L MALTETE;A;89 A;NULL;NULL;0 ;NULL;27987;NULL;
+254752;FX;MG ISOLATION VAL DE LOIRE;NULL;45 ST HILAIRE;NULL;NULL;02 38 45 65 12;mgisolation-vdl(a)worldonline.fr;27988;NULL;
+254753;FX;MAISONS ALASKA;A+;45 CHATEAUNEU;NULL;NULL;02 38 58 68 14;NULL;27989;NULL;
+254754;FX;PAGOT SAVOIE CHAMPAGNOLE;A;21 CHENOVE;NULL;NULL;03 84 52 20 71;NULL;27992;NULL;
+254755;FX;PUBLI DECO MEDIA PLUS;A;16 GOND PONTO;NULL;NULL;05 45 68 40 55;NULL;27997;NULL;
+254756;FX;KELPUB;A;69 LYON;NULL;NULL;04 78 64 63 26;NULL;27999;NULL;
+254757;FX;ARC EN CIEL 4502;NULL;75 PARIS;NULL;NULL;01 42 74 25 21;NULL;28004;NULL;
+254758;FX;ALUMINIUM VACHER BLAISOIS;A+;41 BLOIS;NULL;NULL;02 54 42 76 32;avb-etude(a)wanadoo.fr;28008;NULL;
+254759;FX;ALUMINIUM VACHER BLAISOIS;A+;41 BLOIS;NULL;NULL;02 54 42 76 32;NULL;28008;NULL;
+254760;FX;LE COMMERCIALISTE;A;60 BIENVILLE;NULL;NULL;03 44 40 47 85;NULL;28009;NULL;
+254761;FX;BATIMENT SECOND OEUVRE 4459;NULL;45 SAINT DENI;NULL;NULL;02 38 58 89 06;NULL;28010;NULL;
+254762;FX;BANGUI INTERNATIONAL;B;92 NANTERRE C;NULL;NULL;05 96 51 42 86;fabienne.bangui(a)wanadoo.fr;28011;NULL;
+254763;FX;BANGUI INTERNATIONAL;B;92 NANTERRE C;NULL;NULL;05 96 51 42 86;banguicaraibes(a)wanadoo.fr;28011;NULL;
+254764;FX;ATELIER LILLIU;A;48 RIEUTORT D;NULL;NULL;04 66 47 35 46;NULL;28019;NULL;
+254765;FX;SERAC - TOUT FAIRE;A;25 MORTEAU;NULL;NULL;03 81 67 10 06;NULL;28022;NULL;
+254766;FX;STORES FH 4962;NULL;67 HOENHEIM;NULL;NULL;03 88 18 55 76;stores.fh(a)wanadoo.fr;28024;NULL;
+254767;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;04 73 79 15 88;NULL;28025;NULL;
+254768;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;0 ;NULL;28025;NULL;
+254769;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;0 ;servibat.ovtcharenko(a)aliceadsl.fr;28025;NULL;
+254770;FX;SERVIBAT;A+;63 PERIGNAT L;NULL;NULL;0 ;servibat.stievenart(a)aliceadsl.fr;28025;NULL;
+254771;FX;MIPHALU;A;94 BONNEUIL S;NULL;NULL;01 43 77 80 03;NULL;28032;NULL;
+254772;FX;ERAL MATERIAUX LE VERSOUD;B;38 LE VERSOUD;NULL;NULL;04 76 77 21 32;NULL;28037;NULL;
+254773;FX;HABITAT SERVICE FRANCE;NULL;45 TRAINOU;NULL;NULL;02 38 52 70 01;NULL;28039;NULL;
+254774;FX;CL DIVERS PNE J. MAVILLA;B;92 P;NULL;NULL;0 ;NULL;28042;NULL;
+254775;FX;CL DIVERS PNE J. MAVILLA;B;92 P;NULL;NULL;0 ;NULL;28042;NULL;
+254776;FX;CTBVL (CENTRE TECHN.;A;45 ORLEANS;NULL;NULL;02 38 62 45 46;NULL;28043;NULL;
+254777;FX;CTBVL (CENTRE TECHN.;A;45 ORLEANS;NULL;NULL;02 38 51 17 56;NULL;28043;NULL;
+254778;FX;ABD ALUMINIUM BUILDING DEVELOP;B;38 ST ETIENNE;NULL;NULL;04 76 65 52 18;e.escallier(a)alumyr.com;28046;NULL;
+254779;FX;CAREN RENE 4116;NULL;83 SIX FOURS;NULL;NULL;04 94 10 22 34;NULL;28052;NULL;
+254780;FX;POINT P BMSO BERGERAC;NULL;24 BERGERAC;NULL;NULL;05 53 57 03 22;NULL;28053;NULL;
+254781;FX;POINT P BMSO PINEUILH;A+;33 STE FOY LA;NULL;NULL;0 ;elodie.gardes(a)saint-gobain.com;28054;NULL;
+254782;FX;POINT P BMSO PINEUILH;A+;33 STE FOY LA;NULL;NULL;05 57 46 22 75;NULL;28054;NULL;
+254783;FX;RENARD PERE ET FILS TOUT;A;39 BLETTERANS;NULL;NULL;03 84 85 09 65;NULL;28056;NULL;
+254784;FX;MONTMIRAIL MATERIAUX;A;51 MONTMIRAIL;NULL;NULL;03 26 81 16 41;NULL;28057;NULL;
+254785;FX;MONTMIRAIL MATERIAUX;A;51 MONTMIRAIL;NULL;NULL;03 26 81 16 41;montmirailmateriaux.dominique(a)orange.fr;28057;NULL;
+254786;FX;STE D'EXPLOIT. GODELIER G;A+;60 MARGNY LES;NULL;NULL;03 44 83 80 80;godelier(a)wanadoo.fr;28058;NULL;
+254787;FX;ESTENAVES - TOUT FAIRE;A;33 BAZAS;NULL;NULL;05 56 25 13 61;NULL;28059;NULL;
+254788;FX;CMR ILE DE FRANCE 4549;NULL;93 ROSNY SOUS;NULL;NULL;01 48 97 45 72;NULL;28061;NULL;
+254789;FX;CMR ILE DE FRANCE 4549;NULL;93 ROSNY SOUS;NULL;NULL;0 ;NULL;28061;NULL;
+254790;FX;SYLVESTRE MAT. TOUT FAIRE;A;84 ISLE SUR L;NULL;NULL;04 90 76 89 22;NULL;28078;NULL;
+254791;FX;FREYTET - TOUT FAIRE;A;24 DAGLAN;NULL;NULL;05 53 31 32 20;NULL;28089;NULL;
+254792;FX;TURROU PATRICK;A;89 SAINT GEOR;NULL;NULL;03 86 46 55 97;NULL;28090;NULL;
+254793;FX;CL DIVERS OUEST M. GUISSEAU;A;44 R;NULL;NULL;0 ;NULL;28094;NULL;
+254794;FX;LEONARD DANIEL TOUT FAIRE;A;95 SOISY SOUR;NULL;NULL;01 39 34 24 66;NULL;28096;NULL;
+254795;FX;DECORITEX;A;14 CORMELLES;NULL;NULL;02 31 82 21 39;NULL;28102;NULL;
+254796;FX;DUBILLON REMY 4636;NULL;94 VILLIERS S;NULL;NULL;0 ;NULL;28103;NULL;
+254797;FX;FERMETURES NEUVILLAISES;NULL;76 LA NEUVILL;NULL;NULL;02 32 49 20 56;MARC.LELARGE(a)WANADOO.FR.;28105;NULL;
+254798;FX;GRAILLOT;A+;51 DORMANS;NULL;NULL;03 26 58 22 59;NULL;28106;NULL;
+254799;FX;GRAILLOT;A+;51 DORMANS;NULL;NULL;03 26 58 22 59;graillot.sas(a)orange.fr;28106;NULL;
+254800;FX;GRAILLOT;A+;51 DORMANS;NULL;NULL;0 ;NULL;28106;NULL;
+254801;FX;PELLETIER DOMINIQUE;A;41 MER;NULL;NULL;02 54 81 26 63;NULL;28107;NULL;
+254802;FX;CHAUSSON TRIALIS EPINOUZE;NULL;26 EPINOUZE;NULL;NULL;04 75 31 60 74;NULL;28108;NULL;
+254803;FX;LEUILLET PERE ET FILS;NULL;36 LA CHATRE;NULL;NULL;02 54 06 04 43;NULL;28111;NULL;
+254804;FX;LEUILLET PERE ET FILS;NULL;36 LA CHATRE;NULL;NULL;02 54 06 04 03;NULL;28111;NULL;
+254805;FX;THIEVENAZ MTX TOUT FAIRE;A;38 VOIRON;NULL;NULL;04 76 05 50 66;NULL;28116;NULL;
+254806;FX;MOREAU MATERIAUX TOUT FAIRE;A;87 CHALUS;NULL;NULL;05 55 78 54 04;NULL;28117;NULL;
+254807;FX;CABIA MTX - TOUT FAIRE;A;58 CLAMECY;NULL;NULL;03 86 27 28 92;NULL;28121;NULL;
+254808;FX;ESPACE DECO;A;86 LOUDUN;NULL;NULL;0 ;NULL;28123;NULL;
+254809;FX;PROT 4746;NULL;14 DIVES SUR;NULL;NULL;02 31 91 34 66;NULL;28124;NULL;
+254810;FX;BOUTIQUE DES STORES;B;74 CERVENS;NULL;NULL;04 50 94 62 62;pvermostore(a)aol.com;28127;NULL;
+254811;FX;STEINMETZ;B;63 ISSOIRE;NULL;NULL;04 73 55 10 73;NULL;28128;NULL;
+254812;FX;GANZITTI SERGE;A;95 DOMONT CED;NULL;NULL;01 39 35 03 10;NULL;28132;NULL;
+254813;FX;GRIEU SERRURERIE;A+;76 LE HAVRE;NULL;NULL;02 35 46 04 13;NULL;28133;NULL;
+254814;FX;GRIEU SERRURERIE;A+;76 LE HAVRE;NULL;NULL;0 ;NULL;28133;NULL;
+254815;FX;GRIEU SERRURERIE;A+;76 LE HAVRE;NULL;NULL;02 35 49 22 48;NULL;28133;NULL;
+254816;FX;TECHNIQUE ET TRADITION 4602;NULL;45 OUVROUER L;NULL;NULL;02 38 57 21 77;NULL;28134;NULL;
+254817;FX;TECHNIQUE ET TRADITION 4602;NULL;45 OUVROUER L;NULL;NULL;02 38 57 21 77;cso(a)wanadoo.fr;28134;NULL;
+254818;FX;COME CHRISTOPHE;A;45 ORLEANS;NULL;NULL;02 38 43 47 56;NULL;28137;NULL;
+254819;FX;TECHNI POSE 4477;NULL;12 RODEZ;NULL;NULL;05 65 78 99 43;NULL;28138;NULL;
+254820;FX;HORIZON AUTOMATISME;A+;74 CRAN GEVRI;NULL;NULL;04 50 69 09 86;horizon.automatisme(a)securiste.com;28141;NULL;
+254821;FX;HORIZON AUTOMATISME;A+;74 CRAN GEVRI;NULL;NULL;04 50 69 09 86;NULL;28141;NULL;
+254822;FX;IDESTORES;A;94 VILLEUNEUV;NULL;NULL;01 43 68 78 87;NULL;28142;NULL;
+254823;FX;EURO FENETRES 4422;NULL;94 CRETEIL;NULL;NULL;01 49 81 79 99;NULL;28143;NULL;
+254824;FX;DURAND - TOUT FAIRE;A;54 FOUG;NULL;NULL;03 83 62 76 63;NULL;28153;NULL;
+254825;FX;GABRIEL;B;38 Grenay;NULL;NULL;04 74 95 64 40;NULL;28154;NULL;
+254826;FX;AMBROSINI SAS TOUT FAIRE;B;57 ST AVOLD C;NULL;NULL;03 87 92 88 44;NULL;28156;NULL;
+254827;FX;BAFFET MTX - TOUT FAIRE;A;19 ST VIANCE;NULL;NULL;05 55 24 59 75;NULL;28157;NULL;
+254828;FX;WILHELM RIESS;A;68 DURRENENTZ;NULL;NULL;03 89 49 12 39;NULL;28158;NULL;
+254829;FX;MENUISERIE BERNE;A;42 ST CHAMOND;NULL;NULL;04 77 22 17 66;NULL;28159;NULL;
+254830;FX;NORMEN NORMANDIE 4529;NULL;27 ANGERVILLE;NULL;NULL;02 32 28 41 17;NULL;28160;NULL;
+254831;FX;BEAUGRAND;B;10 SAINT GERM;NULL;NULL;03 25 75 30 75;NULL;28161;NULL;
+254832;FX;ORSONI MARIE-FRANCE;A;20 AJACCIO;NULL;NULL;04 95 22 47 22;NULL;28164;NULL;
+254833;FX;MENUISERIE WINNE;NULL;59 DOUAI CEDE;NULL;NULL;03 27 96 82 28;NULL;28167;NULL;
+254834;FX;VERGNES PIERRE FILS TOUT FAIRE;A;24 MONPAZIER;NULL;NULL;05 53 22 43 95;NULL;28172;NULL;
+254835;FX;ISOPROFIL;D;89 MIGENNES;NULL;NULL;03 86 92 95 36;NULL;28176;NULL;
+254836;FX;DEFARGES CHRISTOPHE;A;45 HUISSEAU S;NULL;NULL;02 38 74 60 90;NULL;28180;NULL;
+254837;FX;RENOVATION CONSEIL HABITA 3027;NULL;76 MONTIVILLI;NULL;NULL;02 35 28 14 43;NULL;28182;NULL;
+254838;FX;SDF PALM ET LE NOUVEL;B;35 RENNES;NULL;NULL;02 99 51 27 98;NULL;28183;NULL;
+254839;FX;TREFLE VERT;D;74 MEGEVE;NULL;NULL;04 50 21 11 61;letreflevert(a)orange.fr;28184;NULL;
+254840;FX;BARTHE JACQUES;A;65 LOURDES;NULL;NULL;05 62 94 08 52;NULL;28188;NULL;
+254841;FX;ERKI;A;37 AMBOISE;NULL;NULL;02 47 57 40 65;NULL;28189;NULL;
+254842;FX;RODRIGUEZ JEAN PIERRE;A;65 LOURDES;NULL;NULL;05 62 42 15 47;jeanpierre.rodrigue(a)orange.fr;28199;NULL;
+254843;FX;MANCUSO ANTONIO;A;77 CHALIFERT;NULL;NULL;01 60 43 85 74;NULL;28200;NULL;
+254844;FX;STORE ETOILE;A;77 BROU SUR C;NULL;NULL;01 64 26 20 99;NULL;28201;NULL;
+254845;FX;STAEG (STE THIAISIENNE;A;94 VITRY SUR;NULL;NULL;01 46 82 74 83;NULL;28209;NULL;
+254846;FX;STREC 4838;NULL;93 BONDY;NULL;NULL;01 48 50 04 18;NULL;28216;NULL;
+254847;FX;ERGB ETUDES ET REALISATIONS;A;45 ORLEANS CE;NULL;NULL;02 38 51 02 83;saergb45(a)aol.com;28222;NULL;
+254848;FX;SABLEMAT - AG. MONTOIS;A;57 MONTOIS LA;NULL;NULL;03 82 45 16 98;NULL;28225;NULL;
+254849;FX;CROSNIER ET FILS;A;41 LA CHAUSSE;NULL;NULL;02 54 74 80 56;NULL;28226;NULL;
+254850;FX;SOHIDEL 4317;NULL;83 LA CROIX V;NULL;NULL;04 94 54 30 92;NULL;28230;NULL;
+254851;FX;APM BOURDON;A;45 DONNERY;NULL;NULL;02 38 59 59 25;NULL;28231;NULL;
+254852;FX;VERANDA SYSTEM'ALU;A;31 SEYSSES;NULL;NULL;05 61 56 99 06;NULL;28241;NULL;
+254853;FX;TILHET MTX - TOUT FAIRE;A;64 ARZACQ;NULL;NULL;05 59 04 42 22;NULL;28251;NULL;
+254854;FX;GST RENOVATION;A;45 SEMOY;NULL;NULL;02 38 66 12 21;NULL;28253;NULL;
+254855;FX;MENUISERIE GIRARDIN;A+;54 PAGNY SUR;NULL;NULL;03 83 81 79 14;NULL;28254;NULL;
+254856;FX;MENUISERIE GIRARDIN;A+;54 PAGNY SUR;NULL;NULL;03 83 81 79 14;hcoquard(a)menuiserie-girardin.com;28254;NULL;
+254857;FX;KERNEN SERGE;A;29 MELLAC;NULL;NULL;02 98 71 90 14;NULL;28260;NULL;
+254858;FX;CATENA ETS SMC;B;12 REQUISTA;NULL;NULL;05 65 46 60 21;NULL;28264;NULL;
+254859;FX;REVILLARD J.;A;74 CRUSEILLES;NULL;NULL;04 50 44 25 34;NULL;28271;NULL;
+254860;FX;FORCLUM ATE;A;76 CANTELEU;NULL;NULL;02 32 83 09 20;NULL;28277;NULL;
+254861;FX;MENUISERIE CASSIN;A;19 EGLETONS;NULL;NULL;05 55 93 93 11;NULL;28286;NULL;
+254862;FX;MENUISERIE CASSIN;A;19 EGLETONS;NULL;NULL;05 55 93 00 91;NULL;28286;NULL;
+254863;FX;PASCAL STORES;NULL;06 VENCE;NULL;NULL;04 93 24 07 60;NULL;28287;NULL;
+254864;FX;SERRURERIE SIGWALD;A;67 KRAUTERGER;NULL;NULL;03 88 95 70 93;NULL;28289;NULL;
+254865;FX;JGF FERREIRA JOQUIM GOMES;A;92 CHATENAY M;NULL;NULL;01 40 91 90 50;jgf(a)cegetel.net;28294;NULL;
+254866;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;64 33 65 30 57;NULL;28295;NULL;
+254867;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;0 ;james.adair(a)johnsonandcouzins.co.nz;28295;NULL;
+254868;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;64 33 65 30 57;sales(a)johnsonandcouzins.co.nz;28295;NULL;
+254869;FX;JOHNSON & COUZINS LTD;D;NZ HRISTCHURC;NULL;NULL;64 33 65 30 57;graeme.kerr(a)johnosonandcouzins.co.nz;28295;NULL;
+254870;FX;SAMAC MTX - TOUT FAIRE;A;61 MORTAGNE A;NULL;NULL;02 33 25 53 41;NULL;28297;NULL;
+254871;FX;ROBERT - ETS MCM;NULL;79 THOUARS;NULL;NULL;05 49 66 09 63;NULL;28298;NULL;
+254872;FX;MCSO;A;17 JONZAC CED;NULL;NULL;05 46 48 21 70;NULL;28299;NULL;
+254873;FX;LEBASTARD ALAIN;D;35 BILLE;NULL;NULL;02 99 97 50 40;NULL;28304;NULL;
+254874;FX;EUROSECURITE;A;31 TOULOUSE;NULL;NULL;05 61 43 04 99;NULL;28306;NULL;
+254875;FX;CHAMPARNAUD - TOUT FAIRE;A;24 PERIGUEUX;NULL;NULL;05 53 07 05 48;NULL;28311;NULL;
+254876;FX;ROUSSEAU MTX - TOUT FAIRE;A;51 ESTERNAY;NULL;NULL;03 26 81 95 98;rousseaumateriaux(a)orange.fr;28317;NULL;
+254877;FX;EGLETONS PVC;A;19 EGLETONS;NULL;NULL;05 55 93 00 91;NULL;28319;NULL;
+254878;FX;BRILHAULT-CHARON 4544;NULL;28 CHATEAUDUN;NULL;NULL;02 37 45 67 55;NULL;28324;NULL;
+254879;FX;ABPM;A;63 LA ROCHE B;NULL;NULL;04 73 39 21 21;NULL;28329;NULL;
+254880;FX;BLOC ET JOB;A;54 LUNEVILLE;NULL;NULL;03á83469225;lesmateriauxvv(a)bloc-job.fr;28332;NULL;
+254881;FX;BLOC ET JOB;A;54 LUNEVILLE;NULL;NULL;03 83 73 38 29;expoluneville(a)bloc-job.fr;28332;NULL;
+254882;FX;BLOC ET JOB;A;54 LUNEVILLE;NULL;NULL;03 83 73 38 29;NULL;28332;NULL;
+254883;FX;JACOB AG. VIGNEULE -TOUT FAIRE;B;55 VIGNEULLES;NULL;NULL;03 29 89 56 17;materiaux.jacob(a)wanadoo.fr;28336;NULL;
+254884;FX;MCA - TOUT FAIRE;A;57 AUDUN LE T;NULL;NULL;03 82 91 27 82;NULL;28338;NULL;
+254885;FX;GUILLEMOT MTX TOUT FAIRE;A;56 LE FAOUET;NULL;NULL;02 97 23 04 69;NULL;28345;NULL;
+254886;FX;BRICORAMA HELIODIS LES ABRETS;NULL;38 LES ABRETS;NULL;NULL;04 76 37 43 45;NULL;28347;NULL;
+254887;FX;BOUCLET ETIENNE LORENOVE;A;41 VENDOME;NULL;NULL;02 54 72 21 75;NULL;28349;NULL;
+254888;FX;BERARDI PVC;B;54 HUSSIGNY G;NULL;NULL;03 82 44 40 87;NULL;28353;NULL;
+254889;FX;BOGO BERNARD;A;06 JUAN LES P;NULL;NULL;04 93 67 11 32;NULL;28355;NULL;
+254890;FX;SAISON MTX TOUT FAIRE 4825;NULL;62 LA CALOTER;NULL;NULL;03 21 90 78 28;NULL;28362;NULL;
+254891;FX;BATEC 4945;A;78 TRAPPES;NULL;NULL;01 34 61 39 05;NULL;28363;NULL;
+254892;FX;PS ISOLATION 2000 4229;NULL;57 ROZERIEULL;NULL;NULL;03 87 60 17 15;NULL;28364;NULL;
+254893;FX;LELEU PHILIPPE 4500;NULL;57 RECHICOURT;NULL;NULL;03 87 24 78 38;NULL;28370;NULL;
+254894;FX;MIROITERIE DU COTENTIN;D;50 VALOGNES;NULL;NULL;02 33 95 07 35;NULL;28375;NULL;
+254895;FX;BALUBOIS;A;88 GRANGES SU;NULL;NULL;03 29 57 56 98;NULL;28376;NULL;
+254896;FX;POT ET FILS TOUT FAIRE FLIXECO;NULL;80 FLIXECOURT;NULL;NULL;03 22 51 50 59;NULL;28377;NULL;
+254897;FX;ARENOVA;NULL;03 DROITURIER;NULL;NULL;04 70 55 04 78;NULL;28379;NULL;
+254898;FX;GLOWACZ JEAN;A;77 CRISENOY;NULL;NULL;01 64 38 86 14;NULL;28384;NULL;
+254899;FX;SEES BOIS;A;61 SEES;NULL;NULL;02 33 28 99 39;NULL;28386;NULL;
+254900;FX;AUDE MENUISERIE;A+;11 VILLENEUVE;NULL;NULL;04 68 26 10 92;NULL;28395;NULL;
+254901;FX;GEDIMAT EXCOFFIER;NULL;51 CHALONS EN;NULL;NULL;03 26 65 78 20;NULL;28400;NULL;
+254902;FX;CIDIC;A+;14 CAEN;NULL;NULL;02 31 86 70 80;NULL;28402;NULL;
+254903;FX;ROMANO STORES;A;69 VILLEURBAN;NULL;NULL;04 78 68 17 75;NULL;28404;NULL;
+254904;FX;MURISOL PIC;A;69 TALUYERS;NULL;NULL;04 78 48 27 78;NULL;28406;NULL;
+254905;FX;OG RENOVATION 4903;NULL;45 CHECY;NULL;NULL;02 38 58 85 29;NULL;28407;NULL;
+254906;FX;MVF SOCIETE D EXPLOIT DES ETS CLAUDE;D;19 USSEL;NULL;NULL;05 55 46 17 47;NULL;28413;NULL;
+254907;FX;PERROT DANIEL;A+;58 COSNE COUR;NULL;NULL;03 86 26 84 99;NULL;28415;NULL;
+254908;FX;ARI ABIT'A RENOV ISOL;A;76 GRAND COUR;NULL;NULL;02 35 67 75 32;NULL;28416;NULL;
+254909;FX;REYNAUD CAUVIN YVOSE;NULL;71 LOUHANS;NULL;NULL;05 62 72 38 01;NULL;28417;NULL;
+254910;FX;DESMONTEIX MATERIAUX;A;26 TAIN;NULL;NULL;04 75 07 02 65;NULL;28418;NULL;
+254911;FX;RUBIS ST LAURENT TOUT FAIRE;A;30 ST LAURENT;NULL;NULL;04 66 50 36 83;NULL;28419;NULL;
+254912;FX;GLAUSER INTERNATIONAL 4460;NULL;75 PARIS;NULL;NULL;0 ;NULL;28424;NULL;
+254913;FX;BATI BAIE 4464;NULL;31 SAINT OREN;NULL;NULL;05 62 88 23 69;NULL;28425;NULL;
+254914;FX;GIUSTI LUCIEN ET CIE;A;13 MARSEILLE;NULL;NULL;04 91 92 46 58;info.slg(a)nerim.net;28431;NULL;
+254915;FX;TOULOUSE MENUISERIE;A;31 TOULOUSE;NULL;NULL;05 61 92 86 44;NULL;28435;NULL;
+254916;FX;TOULOUSE MENUISERIE;A;31 TOULOUSE;NULL;NULL;05 61 40 88 22;NULL;28435;NULL;
+254917;FX;LE CHEVALIER;A+;93 MONTFERMEI;NULL;NULL;01 43 30 69 76;NULL;28439;NULL;
+254918;FX;PLOTON TOUT FAIRE;A;89 TOUCY;NULL;NULL;03 86 44 05 94;NULL;28441;NULL;
+254919;FX;GEDIMAT MICHEL;A;14 LIVAROT;NULL;NULL;02 31 63 12 96;NULL;28444;NULL;
+254920;FX;GEDIMAT MICHEL;A;14 LIVAROT;NULL;NULL;02 31 42 64 48;NULL;28444;NULL;
+254921;FX;2CI CASPAR CONFECTION LORENOVE;A;67 DUPPIGHEIM;NULL;NULL;03 88 49 77 20;NULL;28448;NULL;
+254922;FX;MENUISERIES DES LANDES;NULL;33 VILLANDRAU;NULL;NULL;05 56 25 82 09;NULL;28454;NULL;
+254923;FX;GONSARD ERIC;A;72 ST PAVACE;NULL;NULL;02 43 89 15 88;NULL;28455;NULL;
+254924;FX;KLEIN ALFRED;B;57 HARTZVILLE;NULL;NULL;03 87 25 59 98;NULL;28457;NULL;
+254925;FX;COQUEMPOT - TOUT FAIRE;A;62 FAUQUEBERG;NULL;NULL;03 21 39 23 30;NULL;28460;NULL;
+254926;FX;AP DIFFUSION;A;31 L'UNION;NULL;NULL;05 61 09 65 49;NULL;28462;NULL;
+254927;FX;RIO;NULL;31 TOULOUSE;NULL;NULL;05 62 75 39 38;NULL;28463;NULL;
+254928;FX;EURO CONFORT;A;14 CAEN;NULL;NULL;02 31 82 61 62;NULL;28467;NULL;
+254929;FX;DISTRIBAT TOUT FAIRE;A;28 NOGENT LE;NULL;NULL;02 37 51 99 97;NULL;28477;NULL;
+254930;FX;LEROY MERLIN FRANCE MASSY;A;91 MASSY;NULL;NULL;01 69 30 70 58;NULL;28481;NULL;
+254931;FX;LEGUEULT DIDIER;A;78 RAMBOUILLE;NULL;NULL;01 34 85 57 88;NULL;28482;NULL;
+254932;FX;POINT P MERIDIONALE CAUSSADE;A;82 CAUSSADE;NULL;NULL;05 63 65 05 83;NULL;28486;NULL;
+254933;FX;DELAHAYE HERVE;A;55 HEUDICOURT;NULL;NULL;03 29 89 57 80;NULL;28491;NULL;
+254934;FX;EFIBAT;B;08 SECHEVAL;NULL;NULL;03 24 58 43 20;NULL;28506;NULL;
+254935;FX;RAZE MARC;B;35 BRUC SUR;NULL;NULL;02 99 34 35 56;NULL;28521;NULL;
+254936;FX;GLAVERAL;D;37 MONTLOUIS;NULL;NULL;02 47 45 19 01;NULL;28527;NULL;
+254937;FX;DECORUM;A;76 ROUEN;NULL;NULL;02 35 14 96 78;NULL;28529;NULL;
+254938;FX;MOUTH ET CIE TOUT FAIRE;NULL;16 HIERSAC;NULL;NULL;05 45 90 81 89;NULL;28534;NULL;
+254939;FX;VALLETTE;A+;93 AULNAY SOU;NULL;NULL;01 48 65 93 70;NULL;28546;NULL;
+254940;FX;ABM FERMETURES;A;18 BOURGES;NULL;NULL;02 48 50 78 04;NULL;28550;NULL;
+254941;FX;ORGEL FRANCIS;A;57 LORQUIN;NULL;NULL;0 ;NULL;28552;NULL;
+254942;FX;DUMON ET FILS;B;43 FRUGERES L;NULL;NULL;04 71 76 36 17;NULL;28555;NULL;
+254943;FX;MAGISSON TOUT FAIRE;A;52 ST DIZIER;NULL;NULL;03 25 05 85 85;NULL;28561;NULL;
+254944;FX;LE MUR EN VERRE 4428;NULL;94 CHOISY LE;NULL;NULL;01 48 84 86 86;NULL;28562;NULL;
+254945;FX;ABBR SERRURERIE 4611;NULL;41 BLOIS;NULL;NULL;02 54 78 62 91;NULL;28568;NULL;
+254946;FX;ISOGLASS;D;45 SAINT PRYV;NULL;NULL;02 38 72 14 70;NULL;28570;NULL;
+254947;FX;SUD ALU 4673;NULL;20 SAN NICOLA;NULL;NULL;04 95 38 45 04;NULL;28576;NULL;
+254948;FX;LEROY MERLIN FRANCE CHELLES;A;77 CHELLES;NULL;NULL;01 64 21 88 77;NULL;28582;NULL;
+254949;FX;AMGB 4647;NULL;16 COGNAC;NULL;NULL;05 45 36 53 10;NULL;28585;NULL;
+254950;FX;DICAH 4478;NULL;17 ST HILAIRE;NULL;NULL;0 ;NULL;28586;NULL;
+254951;FX;BALOUZAT SERGE;A;03 LE DONJON;NULL;NULL;04 70 99 51 75;NULL;28588;NULL;
+254952;FX;BS BAIE ISOLATION SARL 5004;A;32 AUCH;NULL;NULL;05 62 06 27 36;NULL;28593;NULL;
+254953;FX;BS BAIE ISOLATION SARL 5004;A;32 AUCH;NULL;NULL;05 62 64 01 05;NULL;28593;NULL;
+254954;FX;GES CLAUDE ETS;A;47 MARMANDE;NULL;NULL;05 53 89 27 06;NULL;28594;NULL;
+254955;FX;MAZY FRERES;A;19 SAINT ROBE;NULL;NULL;05 55 25 20 16;NULL;28595;NULL;
+254956;FX;POMMIER MICHEL;A;42 ST JEAN SO;NULL;NULL;04 77 76 36 07;NULL;28600;NULL;
+254957;FX;THARIOT MAX;A;45 BOISCOMMUN;NULL;NULL;02 38 33 76 76;max.thariot(a)wanadoo.fr;28612;NULL;
+254958;FX;MARTIFEL;A;75 PARIS;NULL;NULL;01 47 64 03 73;NULL;28614;NULL;
+254959;FX;LEROY MERLIN FRANCE ANGERS;A;49 ST BARTHEL;NULL;NULL;02 41 34 71 29;NULL;28615;NULL;
+254960;FX;CHEZE TOUT FAIRE;B;03 EBREUIL;NULL;NULL;04 70 90 75 32;NULL;28620;NULL;
+254961;FX;SODEM;A;45 MEUNG SUR;NULL;NULL;02 38 45 19 80;NULL;28621;NULL;
+254962;FX;SPETTEL 302939;NULL;67 DUPPIGHEIM;NULL;NULL;03 88 49 13 40;NULL;28625;NULL;
+254963;FX;ARCELIN ANDRE;A;45 SULLY SUR;NULL;NULL;02 38 67 71 45;menuiserie.arcelin(a)wanadoo.fr;28628;NULL;
+254964;FX;GAUMERAIS;B;50 LE TEILLEU;NULL;NULL;02 33 59 97 59;NULL;28632;NULL;
+254965;FX;MENUISERIE MOREAU JEANDIN;A;71 TRAMAYES;NULL;NULL;0 ;NULL;28646;NULL;
+254966;FX;PAULIN;NULL;43 LANGEAC;NULL;NULL;04 71 02 06 76;NULL;28647;NULL;
+254967;FX;ROUSSEL - C.S.F.;NULL;28 BONNEVAL;NULL;NULL;02 37 47 25 86;NULL;28649;NULL;
+254968;FX;COMAFRANC VESOUL;A+;70 Vesoul;NULL;NULL;0 ;lesmateriaux.vesoul(a)comafranc.fr;28654;NULL;
+254969;FX;COMAFRANC VESOUL;A+;70 Vesoul;NULL;NULL;03 84 76 78 16;NULL;28654;NULL;
+254970;FX;MIROITERIE GENERALE DE;A+;77 TRILPORT;NULL;NULL;01 64 33 96 24;NULL;28660;NULL;
+254971;FX;GASQ CHRISTIAN;A;95 MERY SUR O;NULL;NULL;01 34 40 58 86;c.gasq(a)wanadoo.fr;28672;NULL;
+254972;FX;GASQ CHRISTIAN;A;95 MERY SUR O;NULL;NULL;01 34 21 60 30;NULL;28672;NULL;
+254973;FX;BENOIST MARC;A;22 PLOUEZEC;NULL;NULL;0 ;benoist.menuiserie(a)free.fr;28688;NULL;
+254974;FX;BENOIST MARC;A;22 PLOUEZEC;NULL;NULL;09 55 33 44 71;benoist.menuiserie(a)free.fr;28688;NULL;
+254975;FX;ROUSSEAU;A;49 LE PLESSIS;NULL;NULL;02 41 31 12 29;Nicolas.boisrame(a)rousseausa.fr;28696;NULL;
+254976;FX;ROUSSEAU;A;49 LE PLESSIS;NULL;NULL;02 41 31 12 29;NULL;28696;NULL;
+254977;FX;BRAUN A. SUCCESSEURS;A+;67 KRAUTERGER;NULL;NULL;03 88 95 79 12;NULL;28701;NULL;
+254978;FX;DOMECA;A;67 DUPPIGHEIM;NULL;NULL;03 88 49 77 44;NULL;28702;NULL;
+254979;FX;BRIOUDE FABRICATION;B;07 AUBENAS CE;NULL;NULL;04 75 93 83 33;NULL;28705;NULL;
+254980;FX;CL DIVERS SUD OUEST D LABARBE;NULL;16 A;NULL;NULL;02 99 14 83 82;NULL;28707;NULL;
+254981;FX;CL DIVERS SUD OUEST D LABARBE;NULL;16 A;NULL;NULL;05 56 13 36 76;NULL;28707;NULL;
+254982;FX;HABITAT CONFORT;A;33 BORDEAUX;NULL;NULL;05 56 24 90 22;NULL;28709;NULL;
+254983;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 41 70 10 96;NULL;28713;NULL;
+254984;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 60 44 05 40;NULL;28713;NULL;
+254985;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 64 65 85 05;NULL;28713;NULL;
+254986;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 64 21 61 76;NULL;28713;NULL;
+254987;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 64 84 50 64;NULL;28713;NULL;
+254988;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 48 19 92 16;NULL;28713;NULL;
+254989;FX;ECOTHERME BAILLY;A+;77 Bailly-Rom;NULL;NULL;01 60 94 02 26;NULL;28713;NULL;
+254990;FX;MILITON;A;36 ISSOUDUN;NULL;NULL;02 54 03 20 06;NULL;28725;NULL;
+254991;FX;BSM;A;30 OULINS;NULL;NULL;04 70 34 03 03;NULL;28731;NULL;
+254992;FX;TAHITI NEON 4678;NULL;PF EETE TAHIT;NULL;NULL;0 ;NULL;28738;NULL;
+254993;FX;TEXITOILES;A+;72 SOLESMES;NULL;NULL;02 43 92 56 61;TEXITOILED(a)WANADOO.FR;28740;NULL;
+254994;FX;DOMOREA 4395;NULL;33 PESSAC;NULL;NULL;05 56 15 00 09;NULL;28751;NULL;
+254995;FX;TRIA B;A;75 PARIS;NULL;NULL;0 ;bonnemain.vincent(a)free.fr;28757;NULL;
+254996;FX;TRIA B;A;75 PARIS;NULL;NULL;0 ;NULL;28757;NULL;
+254997;FX;DV CONSTRUCTION;A;33 MERIGNAC C;NULL;NULL;02 38 78 10 62;NULL;28759;NULL;
+254998;FX;DV CONSTRUCTION;A;33 MERIGNAC C;NULL;NULL;02 38 78 11 28;NULL;28759;NULL;
+254999;FX;DV CONSTRUCTION;A;33 MERIGNAC C;NULL;NULL;02 38 78 10 17;NULL;28759;NULL;
+255000;FX;MOUTH NORBERT;A;57 LES ETANGS;NULL;NULL;03 87 64 20 53;NULL;28760;NULL;
+255001;FX;JACQUES ET MONGELLAZ;A;39 MARNOZ;NULL;NULL;03 84 37 52 91;NULL;28766;NULL;
+255002;FX;HUGUET CREICHE METALLERIE 4693;A;45 INGRE;NULL;NULL;02 38 22 38 20;NULL;28767;NULL;
+255003;FX;ESPRIT FREDERIC;A;21 DIJON;NULL;NULL;03 25 87 24 63;NULL;28778;NULL;
+255004;FX;SAFIP D'ARMOR;NULL;22 TREGUIER;NULL;NULL;02 96 92 22 02;NULL;28781;NULL;
+255005;FX;COLSON ET FROMONT;A;10 LA CHAPELL;NULL;NULL;03 25 74 69 13;colson-fromont(a)wanadoo.fr;28782;NULL;
+255006;FX;SOCIETE D'EXPLOITTION RENOFFEN;A;67 REISCHSTET;NULL;NULL;03 88 20 90 81;NULL;28788;NULL;
+255007;FX;BERLO 4597;NULL;66 VINCA;NULL;NULL;04 68 38 53 03;NULL;28792;NULL;
+255008;FX;TROUILLARD POINT P PONTS DE CE;A;49 LES PONTS;NULL;NULL;02 41 69 96 36;NULL;28793;NULL;
+255009;FX;ERIKA DIFFUSION;A;86 NAINTRE;NULL;NULL;05 49 90 28 29;NULL;28795;NULL;
+255010;FX;SMF;A;94 PLESSIS TR;NULL;NULL;01 56 31 06 12;NULL;28796;NULL;
+255011;FX;MANEM JACQUES;A;91 ITTEVILLE;NULL;NULL;01 64 93 69 41;NULL;28797;NULL;
+255012;FX;AVS;B;74 THYEZ;NULL;NULL;04 50 34 94 35;NULL;28801;NULL;
+255013;FX;LOGIPLAST;A+;76 HARFLEUR;NULL;NULL;02 35 24 88 89;NULL;28803;NULL;
+255014;FX;LOGIPLAST;A+;76 HARFLEUR;NULL;NULL;02 35 24 88 89;LOGIPLAST.PRO @ wanadoo.fr;28803;NULL;
+255015;FX;LECLERC JEAN-PAUL;NULL;67 STRASBOURG;NULL;NULL;03 88 34 65 46;NULL;28804;NULL;
+255016;FX;FRANCE FERMETURES;NULL;18 VIERZON;NULL;NULL;0 ;NULL;28806;NULL;
+255017;FX;LAPORTE 4764;NULL;31 L'ISLE EN;NULL;NULL;05 61 88 79 36;NULL;28814;NULL;
+255018;FX;GRAVIER JEAN CLAUDE;NULL;35 RENNES;NULL;NULL;02 99 53 16 08;NULL;28817;NULL;
+255019;FX;SOLER ROBERT;A;60 GOINCOURT;NULL;NULL;03 44 45 28 98;NULL;28829;NULL;
+255020;FX;POIROT DENIS;A;90 LA CHAPELL;NULL;NULL;03 84 27 67 97;NULL;28831;NULL;
+255021;FX;RIDOLFI;D;21 QUETIGNY;NULL;NULL;03 80 46 68 35;NULL;28833;NULL;
+255022;FX;FLORES SERGE 4199;NULL;83 FREJUS;NULL;NULL;04 94 40 10 87;NULL;28840;NULL;
+255023;FX;AVC SECURITE;A;45 ORLEANS;NULL;NULL;02 38 84 35 68;NULL;28843;NULL;
+255024;FX;AVC SECURITE;A;45 ORLEANS;NULL;NULL;02 38 86 19 00;NULL;28843;NULL;
+255025;FX;ORTIZ;A;14 CAEN;NULL;NULL;02 31 73 71 90;NULL;28853;NULL;
+255026;FX;KERBRAT MTX;A;29 PLOUESCAT;NULL;NULL;02 98 61 91 88;NULL;28854;NULL;
+255027;FX;EQUIPEMENT ET CONFORT 4448;NULL;91 SAINT MICH;NULL;NULL;01 69 04 29 11;NULL;28857;NULL;
+255028;FX;LEROY MERLIN FRANCE MONTSOULT;A;95 MONTSOULT;NULL;NULL;01 34 69 98 81;NULL;28865;NULL;
+255029;FX;BOIS ALUMINIUM PVC BAP;A;60 GRANDU;NULL;NULL;03 44 09 76 29;NULL;28868;NULL;
+255030;FX;CHRISTIAN FERMETURES;A+;77 OZOIR LA F;NULL;NULL;01 60 28 63 75;NULL;28871;NULL;
+255031;FX;GUINEHUT ALAIN;A;49 LES ROBIER;NULL;NULL;02 41 38 02 82;NULL;28872;NULL;
+255032;FX;L ATELIER DE LA TOILE;A;85 LA MOTHE A;NULL;NULL;02 51 38 67 09;NULL;28873;NULL;
+255033;FX;LIAUME 4977;A;37 LARCAY;NULL;NULL;0 ;NULL;28874;NULL;
+255034;FX;PROTAG PROTECTION;D;75 PARIS;NULL;NULL;01 45 32 09 44;NULL;28875;NULL;
+255035;FX;RESEAU PRO BATI DECOR METZ;NULL;08 CHARLEVILL;NULL;NULL;03 24 53 39 09;NULL;28878;NULL;
+255036;FX;TAVERNIER JACQUES;A;45 CHATILLON;NULL;NULL;02 38 96 00 98;NULL;28880;NULL;
+255037;FX;LSK FENETRES LORENOVE;NULL;17 LA ROCHELL;NULL;NULL;05 46 43 08 65;NULL;28888;NULL;
+255038;FX;AJI MATERIAUX;B;35 JANZE;NULL;NULL;02 99 47 35 76;NULL;28889;NULL;
+255039;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;mickaelgabillard.spbm(a)orange.fr;28894;NULL;
+255040;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;0 ;franckcherif.spbm(a)orange.fr;28894;NULL;
+255041;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;benoitsable.spbm(a)wanadoo.fr;28894;NULL;
+255042;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;NULL;28894;NULL;
+255043;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;0 ;philippevalat.spbm(a)orange.fr;28894;NULL;
+255044;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;laurentmartin.spbm(a)orange.fr;28894;NULL;
+255045;FX;SPBM;A+;72 ARCONNAY;NULL;NULL;02 33 81 22 20;damienflerchinger.spbm(a)orange.fr;28894;NULL;
+255046;FX;MENUISERIE DU LAURAGAIS;A;31 VILLEFRANC;NULL;NULL;05 61 81 59 29;NULL;28897;NULL;
+255047;FX;TOLEDO FERMETURES;A+;64 LESCAR;NULL;NULL;05 59 81 00 46;NULL;28898;NULL;
+255048;FX;SONDAZ NOEL;D;74 CHOISY;NULL;NULL;04 50 77 46 33;NULL;28901;NULL;
+255049;FX;DEMARET PHILIPPE;NULL;14 NOYERS BOC;NULL;NULL;02 31 77 56 81;NULL;28912;NULL;
+255050;FX;MENUISERIE DE L'EST;B;57 GANDRANGE;NULL;NULL;03 87 58 30 24;menuiserie.est(a)wanadoo.fr;28913;NULL;
+255051;FX;TOP-FERM;A;68 SPECHBACH;NULL;NULL;0 ;NULL;28917;NULL;
+255052;FX;COFELY;A;64 BORDES CED;NULL;NULL;05 59 53 26 55;NULL;28919;NULL;
+255053;FX;FAUCHE JACQUES;A;38 SAINT EGRE;NULL;NULL;04 76 27 43 21;NULL;28928;NULL;
+255054;FX;DEVULDER BERTRAND;NULL;62 FAMPOUX;NULL;NULL;03 21 59 29 52;NULL;28932;NULL;
+255055;FX;ABCD 4609;NULL;34 BEZIERS;NULL;NULL;04 67 11 09 39;NULL;28940;NULL;
+255056;FX;ATA;A;69 MEYZIEU;NULL;NULL;04 72 45 02 53;NULL;28956;NULL;
+255057;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;lionel.groseille(a)franciaflex.com;28958;NULL;
+255058;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;aline.perche(a)franciaflex.com;28958;NULL;
+255059;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;michele.gaultier(a)franciaflex.com;28958;NULL;
+255060;FX;VENTES AU PERSONNEL;NULL;45 CHECY;NULL;NULL;08 10 82 05 10;veronique.lozachmeur(a)franciaflex.com;28958;NULL;
+255061;FX;PHILIPPE JACQUES;NULL;22 MAEL CARHA;NULL;NULL;02 98 10 12 45;NULL;28965;NULL;
+255062;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;swatson(a)theawningcompany.co.uk;28974;NULL;
+255063;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Richard.May(a)theawningcompany.co.uk;28974;NULL;
+255064;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Bryce.Ratcliffe(a)theawningcompany.co.uk;28974;NULL;
+255065;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Catherine.conway(a)theawningcompany.co.uk;28974;NULL;
+255066;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;NULL;28974;NULL;
+255067;FX;THE AWNING COMPANY (UK) LTD;D;GB CASHIRE BL;NULL;NULL;4412 04 54 49 01;Andria.Cowan(a)theawningcompany.co.uk;28974;NULL;
+255068;FX;THAWEEWAT CANVAS;D;TH 10 BANGKOK;NULL;NULL;66 27 42 27 87;nakorn(a)thaweewat.com;28983;NULL;
+255069;FX;MULONNIERE;A;35 JANZE;NULL;NULL;02 99 47 26 34;NULL;28986;NULL;
+255070;FX;POINT P BMSO AYTRE;NULL;17 AYTRE;NULL;NULL;06 46 44 65 66;NULL;28987;NULL;
+255071;FX;ATRIO;A+;38 SASSENAGE;NULL;NULL;08 20 90 07 26;NULL;28989;NULL;
+255072;FX;COMAFRANC CERNAY;A+;68 Cernay;NULL;NULL;03 89 75 64 00;NULL;28993;NULL;
+255073;FX;COMAFRANC CERNAY;A+;68 Cernay;NULL;NULL;0 ;berche(a)comafranc.fr;28993;NULL;
+255074;FX;PUJOL JM;A+;11 PALAJA;NULL;NULL;04 68 79 73 34;NULL;28997;NULL;
+255075;FX;GEDIMAT AUGRY;A;17 VILLIERS C;NULL;NULL;05 46 33 03 08;NULL;29000;NULL;
+255076;FX;METALLERIE GRAND;A;71 LA ROCHE V;NULL;NULL;03 85 37 78 82;NULL;29002;NULL;
+255077;FX;WARSMANN;B;08 NOUZONVILL;NULL;NULL;0 ;NULL;29004;NULL;
+255078;FX;WARSMANN;B;08 NOUZONVILL;NULL;NULL;03 24 53 75 24;NULL;29004;NULL;
+255079;FX;BARRERE DUCOURTHIAL;A;03 MONTLUCON;NULL;NULL;04 70 06 60 09;NULL;29008;NULL;
+255080;FX;ATELIER JAROUSSEAU;A;85 MORTAGNE S;NULL;NULL;02 51 65 17 88;NULL;29011;NULL;
+255081;FX;VBM;D;49 BAUGE;NULL;NULL;02 41 89 01 50;NULL;29012;NULL;
+255082;FX;BMCE POINT P PERE;NULL;45 ORLEANS CE;NULL;NULL;0 ;NULL;29018;NULL;
+255083;FX;COMAFRANC PERE;A+;90 BELFORT;NULL;NULL;03 84 26 33 79;NULL;29019;NULL;
+255084;FX;COMAFRANC PERE;A+;90 BELFORT;NULL;NULL;0 ;compta.fournisseur(a)comafranc.fr;29019;NULL;
+255085;FX;COMASUD PERE;NULL;13 MARSEILLE;NULL;NULL;0 ;NULL;29020;NULL;
+255086;FX;COMASUD PERE;NULL;83 BRIGNOLES;NULL;NULL;04 94 69 33 11;NULL;29025;NULL;
+255087;FX;MATERIAUX SERVICE PERE;NULL;92 CLAMART;NULL;NULL;01 46 30 12 43;NULL;29026;NULL;
+255088;FX;MEGNIEN PERE;NULL;86 VOUNEUIL S;NULL;NULL;0 ;NULL;29027;NULL;
+255089;FX;MOREAU PERE;NULL;54 NANCY;NULL;NULL;0 ;NULL;29028;NULL;
+255090;FX;RESEAU PRO CENTRE OUEST;NULL;37 ST PIERRE;NULL;NULL;0 ;NULL;29030;NULL;
+255091;FX;RESEAU PRO IDF;NULL;94 BONNEUIL S;NULL;NULL;0 ;NULL;29032;NULL;
+255092;FX;POINT P PERE;NULL;73 CHAMBERY C;NULL;NULL;04 79 96 80 49;NULL;29033;NULL;
+255093;FX;POINT P PERE;NULL;60 NOYON;NULL;NULL;0344B094409;NULL;29035;NULL;
+255094;FX;POINT P PERE SONEN;NULL;76 LE HAVRE;NULL;NULL;0 ;NULL;29037;NULL;
+255095;FX;SAMSE;D;38 GRENOBLE;NULL;NULL;04 76 46 88 67;NULL;29040;NULL;
+255096;FX;SAMSE;D;38 GRENOBLE;NULL;NULL;0 ;eric-vogler(a)samse.fr;29040;NULL;
+255097;FX;BRICORAMA PERE;B;93 NOISY LE G;NULL;NULL;0 ;NULL;29045;NULL;
+255098;FX;EURODRAP;NULL;75 PARIS;NULL;NULL;01 43 70 26 99;david(a)suntwist.fr;40002;NULL;
+255099;FX;CL DIVERS INTERIEURS;NULL;45 CHECY;NULL;NULL;0 ;NULL;40009;NULL;
+255100;FX;BS DECORS;NULL;78 LES MUREAU;NULL;NULL;01 30 99 65 50;NULL;40010;NULL;
+255101;FX;MADECO;A+;59 PONT A MAR;NULL;NULL;03 20 18 06 01;NULL;40016;NULL;
+255102;FX;MADECO;A+;59 PONT A MAR;NULL;NULL;0 ;vlecocq(a)madeco.fr;40016;NULL;
+255103;FX;CL DIVERS APPRO INTERIEUR;NULL;45 CHECY;NULL;NULL;02 38 60 41 80;NULL;40021;NULL;
+255104;FX;FIMA 4638;NULL;43 TENCE;NULL;NULL;04 71 65 42 11;NULL;40031;NULL;
+255105;FX;TRANSPORTS LOTRA 6005;NULL;45 ORMES;NULL;NULL;02 38 74 75 74;NULL;40032;NULL;
+255106;FX;CLIPS;A+;14 FALAISE;NULL;NULL;02 31 40 07 50;NULL;40047;NULL;
+255107;FX;BHV PARIS;D;75 PARIS;NULL;NULL;01 42 74 95 63;NULL;40049;NULL;
+255108;FX;BHV PARIS;D;75 PARIS;NULL;NULL;0 ;isabelle.lechampion(a)franciaflex.com;40049;NULL;
+255109;FX;DIMATER;NULL;69 CALUIRE ET;NULL;NULL;04 78 23 30 86;NULL;40061;NULL;
+255110;FX;CL DIVERS INTERIEURS SANS TVA;NULL;45 CHECY;NULL;NULL;0 ;NULL;40062;NULL;
+255111;FX;SNER;A+;14 FALAISE;NULL;NULL;02 54 44 24 33;NULL;40063;NULL;
+255112;FX;SNER;A+;14 FALAISE;NULL;NULL;02 31 40 16 65;NULL;40063;NULL;
+255113;FX;SNER;A+;14 FALAISE;NULL;NULL;0 ;NULL;40063;NULL;
+255114;FX;SNER;A+;14 FALAISE;NULL;NULL;02 35 63 98 52;NULL;40063;NULL;
+255115;FX;ABASSES INGENERIE;A;42 FARNAY;NULL;NULL;04 77 73 44 48;NULL;40065;NULL;
+255116;FX;BCL DECOR SAS;NULL;89 AUXERRE CE;NULL;NULL;03 86 94 82 80;bcl-decor(a)wanadoo.fr;40072;NULL;
+255117;FX;AGENOR;A;45 ST JEAN DE;NULL;NULL;02 38 61 57 99;NULL;40074;NULL;
+255118;FX;CLOISAL;A;56 QUEVEN;NULL;NULL;02 97 05 40 91;NULL;40085;NULL;
+255119;FX;FRANCIAFLEX OUTILS DE VENTE;NULL;45 CHECY;NULL;NULL;0 ;NULL;40090;NULL;
+255120;FX;ROCHE HABITAT;NULL;69 St BONNET;NULL;NULL;04 72 48 31 90;NULL;45001;NULL;
+255121;FX;ROCHE HABITAT;NULL;69 St BONNET;NULL;NULL;0 ;NULL;45001;NULL;
+255122;FX;PERSONNEL VENTES EXTERIEUR;NULL;38 LA TOUR DU;NULL;NULL;0 ;NULL;45004;NULL;
+255123;FX;CL DIVERS EXTERIEURS FOURN;NULL;38 LA TOUR DU;NULL;NULL;02 47 92 22 60;NULL;45009;NULL;
+255124;FX;CL DIVERS EXTERIEURS FOURN;NULL;38 LA TOUR DU;NULL;NULL;0 ;NULL;45009;NULL;
+255125;FX;FRANCE FERMETURES;NULL;18 VIERZON CE;NULL;NULL;08 25 08 08 16;NULL;45027;NULL;
+255126;FX;FRANCE FERMETURES;NULL;18 VIERZON CE;NULL;NULL;02 48 52 11 67;NULL;45027;NULL;
+255127;FX;FRANCE FERMETURES;NULL;18 VIERZON CE;NULL;NULL;0 ;NULL;45027;NULL;
1
0
25 Feb '14
Author: kmorin
Date: 2014-02-25 10:19:54 +0100 (Tue, 25 Feb 2014)
New Revision: 12
Url: http://codelutin.com/projects/faxtomail/repository/revisions/12
Log:
refs #4231 Faire les UI de tous les ?\195?\169crans
Added:
trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/FaxToMailUserImpl.java
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/imports/
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/imports/ClientImportModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReplyAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/RangeTableModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupButton.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellEditor.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellRenderer.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentModelAware.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/ButtonAttachment.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/SaveAttachmentAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/ButtonHistory.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItemModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIModel.java
Modified:
trunk/faxtomail-persistence/src/main/xmi/faxtomail.zargo
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielService.java
trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_en_GB.properties
trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_fr_FR.properties
trunk/faxtomail-ui-swing/pom.xml
trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java
trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties
trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties
trunk/faxtomail-ui-swing/src/main/resources/log4j.properties
trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java
trunk/pom.xml
Added: trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/FaxToMailUserImpl.java
===================================================================
--- trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/FaxToMailUserImpl.java (rev 0)
+++ trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/FaxToMailUserImpl.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,9 @@
+package com.franciaflex.faxtomail.persistence.entities;
+
+public class FaxToMailUserImpl extends FaxToMailUserAbstract {
+
+ @Override
+ public String toString() {
+ return getTrigraph() + " - " + getFirstName() + " " + getLastName();
+ }
+}
Modified: trunk/faxtomail-persistence/src/main/xmi/faxtomail.zargo
===================================================================
(Binary files differ)
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -32,6 +32,7 @@
import com.franciaflex.faxtomail.services.service.FaxToMailWebApplicationContext;
import com.franciaflex.faxtomail.services.service.MailFilterService;
import com.franciaflex.faxtomail.services.service.MailFolderService;
+import com.franciaflex.faxtomail.services.service.ReferentielService;
import java.util.Date;
@@ -83,4 +84,8 @@
public EmailService getEmailService() {
return newService(EmailService.class);
}
+
+ public ReferentielService getReferentielService() {
+ return newService(ReferentielService.class);
+ }
}
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -1,5 +1,7 @@
package com.franciaflex.faxtomail.services.service;
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+import com.franciaflex.faxtomail.persistence.entities.AttachmentTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.EmailTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
@@ -7,6 +9,8 @@
import com.franciaflex.faxtomail.persistence.entities.HistoryTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.HistoryType;
import com.franciaflex.faxtomail.persistence.entities.MailFolder;
+import com.franciaflex.faxtomail.persistence.entities.RangeRow;
+import com.franciaflex.faxtomail.persistence.entities.RangeRowTopiaDao;
import com.franciaflex.faxtomail.services.FaxToMailServiceSupport;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -24,6 +28,43 @@
private static final Log log = LogFactory.getLog(EmailService.class);
+ public Email saveEmail(Email email, FaxToMailUser user) {
+
+ if (email.getAttachment() != null) {
+ AttachmentTopiaDao attachmentDao = getPersistenceContext().getAttachmentDao();
+ for (Attachment attachment : email.getAttachment()) {
+ if (!attachment.isPersisted()) {
+ attachmentDao.create(attachment);
+ } else {
+ attachmentDao.update(attachment);
+ }
+ }
+ }
+
+ if (email.getRangeRow() != null) {
+ RangeRowTopiaDao rangeRowDao = getPersistenceContext().getRangeRowDao();
+ for (RangeRow rangeRow : email.getRangeRow()) {
+ if (!rangeRow.isPersisted()) {
+ rangeRowDao.create(rangeRow);
+ } else {
+ rangeRowDao.update(rangeRow);
+ }
+ }
+ }
+
+ HistoryTopiaDao historyDao = getPersistenceContext().getHistoryDao();
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_FAX_TO_MAIL_USER, user,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+ email.addHistory(history);
+
+ EmailTopiaDao dao = getPersistenceContext().getEmailDao();
+ Email result = dao.update(email);
+ getPersistenceContext().commit();
+
+ return result;
+ }
+
public List<Email> getEmailForFolder(MailFolder folder) {
EmailTopiaDao dao = getPersistenceContext().getEmailDao();
return new ArrayList<>(dao.forMailFolderEquals(folder).findAll());
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -25,6 +25,7 @@
*/
import com.franciaflex.faxtomail.FaxToMailConfiguration;
+import com.franciaflex.faxtomail.persistence.entities.Client;
import com.franciaflex.faxtomail.persistence.entities.Company;
import com.franciaflex.faxtomail.persistence.entities.CompanyTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.ConfigurationTopiaDao;
@@ -34,6 +35,8 @@
import com.franciaflex.faxtomail.persistence.entities.DemandTypeTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.EmailTopiaDao;
+import com.franciaflex.faxtomail.persistence.entities.EtatAttente;
+import com.franciaflex.faxtomail.persistence.entities.EtatAttenteTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUserGroup;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUserGroupTopiaDao;
@@ -46,6 +49,8 @@
import com.franciaflex.faxtomail.persistence.entities.Priority;
import com.franciaflex.faxtomail.persistence.entities.PriorityTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.Range;
+import com.franciaflex.faxtomail.persistence.entities.RangeRow;
+import com.franciaflex.faxtomail.persistence.entities.RangeRowTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.RangeTopiaDao;
import com.franciaflex.faxtomail.services.FaxToMailServiceSupport;
import com.google.common.collect.Lists;
@@ -55,6 +60,10 @@
import org.nuiton.jaxx.application.ApplicationTechnicalException;
import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URISyntaxException;
+import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -127,40 +136,100 @@
long count = demandTypeDao.count();
if (count == 0) {
+ List<Client> clients;
+ try {
+ File clientFile = new File(ClassLoader.getSystemResource("fx_clients.csv").toURI());
+ clients = getReferentielService().importClients(clientFile);
+
+ } catch(IOException | URISyntaxException e) {
+ clients = new ArrayList<>();
+ }
+
List<DemandType> types = Lists.newArrayList(
demandTypeDao.create(DemandType.PROPERTY_LABEL, "Commande"),
- demandTypeDao.create(DemandType.PROPERTY_LABEL, "SAV")
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Commande Réponse"),
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Commande Annulation/Modification"),
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Devis Diffus"),
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Devis Chantier"),
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Devis Gros Chantier"),
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Devis Réponse/Modification"),
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Réclamation"),
+ demandTypeDao.create(DemandType.PROPERTY_LABEL, "Autres")
);
DemandStatusTopiaDao demandStatusDao = getPersistenceContext().getDemandStatusDao();
List<DemandStatus> statuses = Lists.newArrayList(
- demandStatusDao.create(DemandStatus.PROPERTY_LABEL, "Non traîtée"),
+ demandStatusDao.create(DemandStatus.PROPERTY_LABEL, "Non traîté"),
demandStatusDao.create(DemandStatus.PROPERTY_LABEL, "En cours"),
- demandStatusDao.create(DemandStatus.PROPERTY_LABEL, "Validée")
+ demandStatusDao.create(DemandStatus.PROPERTY_LABEL, "Transmis EDI"),
+ demandStatusDao.create(DemandStatus.PROPERTY_LABEL, "Transféré"),
+ demandStatusDao.create(DemandStatus.PROPERTY_LABEL, "Archive")
);
+ EtatAttenteTopiaDao etatAttenteDao = getPersistenceContext().getEtatAttenteDao();
+ List<EtatAttente> etatAttentes = Lists.newArrayList(
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "REM Attente Remise-accord expo"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "ODC attente Ouverture de Compte"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "GRA attente accord gratuit"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "CLT attente réponse client"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "PPC attente chiffrage BEI PPC"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "SIGN attente réponse BEI signature"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "PROFORMA attente paiement proforma"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "BAT attente retour BAT lettrage-logo"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "GAB attente reception gabarit"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "PROTO attente accord proto"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "DAC attente pour assistance chantier"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "DAV attente analyse avoir"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "RET attente retour materiel"),
+ etatAttenteDao.create(Range.PROPERTY_LABEL, "EXP attente expertise")
+ );
+
PriorityTopiaDao priorityDao = getPersistenceContext().getPriorityDao();
List<Priority> priorities = Lists.newArrayList(
- priorityDao.create(Priority.PROPERTY_LABEL, "Basse"),
- priorityDao.create(Priority.PROPERTY_LABEL, "Normale"),
- priorityDao.create(Priority.PROPERTY_LABEL, "Haute"),
- priorityDao.create(Priority.PROPERTY_LABEL, "Urgente")
+ priorityDao.create(Priority.PROPERTY_LABEL, "-"),
+ priorityDao.create(Priority.PROPERTY_LABEL, "!"),
+ priorityDao.create(Priority.PROPERTY_LABEL, "F")
);
RangeTopiaDao rangeDao = getPersistenceContext().getRangeDao();
List<Range> ranges = Lists.newArrayList(
- rangeDao.create(Range.PROPERTY_LABEL, "Menuiserie"),
- rangeDao.create(Range.PROPERTY_LABEL, "Volets roulants"),
- rangeDao.create(Range.PROPERTY_LABEL, "Accessoires")
+ rangeDao.create(Range.PROPERTY_LABEL, "FFE VR"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FFE AUTRE"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FME FX DROIT"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FME FX CINTRE"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FME NOEL"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FSE BANNE"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FSE ROCH AUTRE"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FSE CHECY"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FSI"),
+ rangeDao.create(Range.PROPERTY_LABEL, "FSI FMI")
);
FaxToMailUserTopiaDao userDao = getPersistenceContext().getFaxToMailUserDao();
- FaxToMailUser marc = userDao.create(FaxToMailUser.PROPERTY_NAME, "Marc Lefebvre", FaxToMailUser.PROPERTY_LOGIN, "mlefebvre");
- FaxToMailUser cyril = userDao.create(FaxToMailUser.PROPERTY_NAME, "Cyril Baillet", FaxToMailUser.PROPERTY_LOGIN, "cbaillet");
- FaxToMailUser frederic = userDao.create(FaxToMailUser.PROPERTY_NAME, "Frédéric Viala", FaxToMailUser.PROPERTY_LOGIN, "fviala");
- FaxToMailUser claire = userDao.create(FaxToMailUser.PROPERTY_NAME, "Claire Marquis", FaxToMailUser.PROPERTY_LOGIN, "cmarquis");
- FaxToMailUser agathe = userDao.create(FaxToMailUser.PROPERTY_NAME, "Agathe Borde", FaxToMailUser.PROPERTY_LOGIN, "aborde");
- FaxToMailUser jeanne = userDao.create(FaxToMailUser.PROPERTY_NAME, "Jeanne Bourgoin", FaxToMailUser.PROPERTY_LOGIN, "jbourgoin");
+ FaxToMailUser marc = userDao.create(FaxToMailUser.PROPERTY_LAST_NAME, "Lefèbvre",
+ FaxToMailUser.PROPERTY_FIRST_NAME, "Marc",
+ FaxToMailUser.PROPERTY_LOGIN, "mlefebvre",
+ FaxToMailUser.PROPERTY_TRIGRAPH, "MLE");
+ FaxToMailUser cyril = userDao.create(FaxToMailUser.PROPERTY_LAST_NAME, "Baillet",
+ FaxToMailUser.PROPERTY_FIRST_NAME, "Cyril",
+ FaxToMailUser.PROPERTY_LOGIN, "cbaillet",
+ FaxToMailUser.PROPERTY_TRIGRAPH, "CBA");
+ FaxToMailUser frederic = userDao.create(FaxToMailUser.PROPERTY_LAST_NAME, "Viala",
+ FaxToMailUser.PROPERTY_FIRST_NAME, "Frédéric",
+ FaxToMailUser.PROPERTY_LOGIN, "fviala",
+ FaxToMailUser.PROPERTY_TRIGRAPH, "FVI");
+ FaxToMailUser claire = userDao.create(FaxToMailUser.PROPERTY_LAST_NAME, "Marquis",
+ FaxToMailUser.PROPERTY_FIRST_NAME, "Claire",
+ FaxToMailUser.PROPERTY_LOGIN, "cmarquis",
+ FaxToMailUser.PROPERTY_TRIGRAPH, "CMA");
+ FaxToMailUser agathe = userDao.create(FaxToMailUser.PROPERTY_LAST_NAME, "Borde",
+ FaxToMailUser.PROPERTY_FIRST_NAME, "Agathe",
+ FaxToMailUser.PROPERTY_LOGIN, "aborde",
+ FaxToMailUser.PROPERTY_TRIGRAPH, "ABO");
+ FaxToMailUser jeanne = userDao.create(FaxToMailUser.PROPERTY_LAST_NAME, "Bourgoin",
+ FaxToMailUser.PROPERTY_FIRST_NAME, "Jeanne",
+ FaxToMailUser.PROPERTY_LOGIN, "jbourgoin",
+ FaxToMailUser.PROPERTY_TRIGRAPH, "JBO");
MailFolderTopiaDao folderDao = getPersistenceContext().getMailFolderDao();
List<MailFolder> folders = new ArrayList<>();
@@ -168,69 +237,24 @@
Random random = new Random();
EmailTopiaDao emailDao = getPersistenceContext().getEmailDao();
HistoryTopiaDao historyDao = getPersistenceContext().getHistoryDao();
+ RangeRowTopiaDao rangeRowDao = getPersistenceContext().getRangeRowDao();
MailFolder cyrilFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Cyril");
int r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
- History.PROPERTY_MODIFICATION_DATE, new Date());
-
- Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
- Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
- Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, cyrilFolder,
- Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
- Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
- Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
- Email.PROPERTY_HISTORY, Lists.newArrayList(history));
-
-
- if (random.nextBoolean()) {
- getEmailService().addToOpeningHistory(email, cyril, new Date());
- }
+ createEmail(random, historyDao, rangeRowDao, emailDao, ranges, clients, types, statuses, priorities, cyrilFolder, cyril);
}
MailFolder claireFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Claire");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
- History.PROPERTY_MODIFICATION_DATE, new Date());
-
- Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
- Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
- Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, claireFolder,
- Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
- Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
- Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
- Email.PROPERTY_HISTORY, Lists.newArrayList(history));
-
- if (random.nextBoolean()) {
- getEmailService().addToOpeningHistory(email, claire, new Date());
- }
+ createEmail(random, historyDao, rangeRowDao, emailDao, ranges, clients, types, statuses, priorities, claireFolder, claire);
}
MailFolder agatheFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Agathe");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
- History.PROPERTY_MODIFICATION_DATE, new Date());
-
- Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
- Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
- Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, agatheFolder,
- Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
- Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
- Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
- Email.PROPERTY_HISTORY, Lists.newArrayList(history));
-
- if (random.nextBoolean()) {
- getEmailService().addToOpeningHistory(email, agathe, new Date());
- }
+ createEmail(random, historyDao, rangeRowDao, emailDao, ranges, clients, types, statuses, priorities, agatheFolder, agathe);
}
folders.add(folderDao.create(MailFolder.PROPERTY_NAME, "Chargés de clientèle",
@@ -239,64 +263,19 @@
MailFolder marcFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Marc");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
- History.PROPERTY_MODIFICATION_DATE, new Date());
-
- Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
- Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
- Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, marcFolder,
- Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
- Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
- Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
- Email.PROPERTY_HISTORY, Lists.newArrayList(history));
-
- if (random.nextBoolean()) {
- getEmailService().addToOpeningHistory(email, marc, new Date());
- }
+ createEmail(random, historyDao, rangeRowDao, emailDao, ranges, clients, types, statuses, priorities, marcFolder, marc);
}
MailFolder fredericFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Frédéric");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
- History.PROPERTY_MODIFICATION_DATE, new Date());
-
- Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
- Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
- Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, fredericFolder,
- Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
- Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
- Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
- Email.PROPERTY_HISTORY, Lists.newArrayList(history));
-
- if (random.nextBoolean()) {
- getEmailService().addToOpeningHistory(email, frederic, new Date());
- }
+ createEmail(random, historyDao, rangeRowDao, emailDao, ranges, clients, types, statuses, priorities, fredericFolder, frederic);
}
MailFolder jeanneFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Jeanne");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
- History.PROPERTY_MODIFICATION_DATE, new Date());
-
- Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
- Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
- Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, jeanneFolder,
- Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
- Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
- Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
- Email.PROPERTY_HISTORY, Lists.newArrayList(history));
-
- if (random.nextBoolean()) {
- getEmailService().addToOpeningHistory(email, jeanne, new Date());
- }
+ createEmail(random, historyDao, rangeRowDao, emailDao, ranges, clients, types, statuses, priorities, jeanneFolder, jeanne);
}
folders.add(folderDao.create(MailFolder.PROPERTY_NAME, "SAV",
MailFolder.PROPERTY_CHILDREN, Lists.newArrayList(marcFolder, fredericFolder, jeanneFolder)));
@@ -318,4 +297,53 @@
}
}
+ protected void createEmail(Random random,
+ HistoryTopiaDao historyDao,
+ RangeRowTopiaDao rangeRowDao,
+ EmailTopiaDao emailDao,
+ List<Range> ranges,
+ List<Client> clients,
+ List<DemandType> types,
+ List<DemandStatus> statuses,
+ List<Priority> priorities,
+ MailFolder folder,
+ FaxToMailUser user) {
+
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+
+ List<RangeRow> rangeRows = new ArrayList<>();
+ for (int j = 0 ; j < random.nextInt(4) + 1 ; j++) {
+ RangeRow rangeRow = rangeRowDao.create(RangeRow.PROPERTY_RANGE, ranges.get(random.nextInt(ranges.size())),
+ RangeRow.PROPERTY_COMMAND_NUMBER, RandomStringUtils.randomNumeric(6),
+ RangeRow.PROPERTY_PRODUCT_QUANTITY, random.nextInt(100),
+ RangeRow.PROPERTY_SAV_QUANTITY, random.nextInt(100));
+ rangeRows.add(rangeRow);
+ }
+
+ Client client = clients.get(random.nextInt(clients.size()));
+ String senderEmail = client.getEmailAddress();
+ if (senderEmail == null && client.getFaxNumber() != null) {
+ senderEmail = client.getFaxNumber().replace(" ", "") + "@franciaflex.fax";
+ }
+
+ boolean opened = random.nextBoolean();
+ Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, senderEmail,
+ Email.PROPERTY_CLIENT_CODE, client.getCode(),
+ Email.PROPERTY_OBJECT, client.getCaracteristic1() + " / " + client.getCode() + " / " + client.getName() + " / " + client.getFaxNumber() + " / " +
+ SimpleDateFormat.getDateTimeInstance().format(new Date()),
+ Email.PROPERTY_RECEPTION_DATE, new Date(),
+ Email.PROPERTY_MAIL_FOLDER, folder,
+ Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
+ Email.PROPERTY_DEMAND_STATUS, statuses.get(opened ? 1 : 0),
+ Email.PROPERTY_PRIORITY, priorities.get(0),
+ Email.PROPERTY_RANGE_ROW, rangeRows,
+ Email.PROPERTY_HISTORY, Lists.newArrayList(history));
+
+
+ if (opened) {
+ getEmailService().addToOpeningHistory(email, user, new Date());
+ }
+ }
+
}
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielService.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielService.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielService.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -1,18 +1,34 @@
package com.franciaflex.faxtomail.services.service;
+import com.franciaflex.faxtomail.persistence.entities.Client;
+import com.franciaflex.faxtomail.persistence.entities.ClientTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.DemandStatus;
import com.franciaflex.faxtomail.persistence.entities.DemandStatusTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.DemandType;
import com.franciaflex.faxtomail.persistence.entities.DemandTypeTopiaDao;
+import com.franciaflex.faxtomail.persistence.entities.EtatAttente;
+import com.franciaflex.faxtomail.persistence.entities.EtatAttenteTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.Priority;
import com.franciaflex.faxtomail.persistence.entities.PriorityTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.Range;
import com.franciaflex.faxtomail.persistence.entities.RangeTopiaDao;
import com.franciaflex.faxtomail.services.FaxToMailServiceSupport;
+import com.franciaflex.faxtomail.services.service.imports.ClientImportModel;
+import com.google.common.base.Charsets;
+import com.google.common.io.Files;
+import org.apache.commons.io.IOUtils;
+import org.nuiton.csv.Import;
+import org.nuiton.csv.ImportRuntimeException;
+import org.nuiton.jaxx.application.ApplicationTechnicalException;
+import java.io.File;
+import java.io.IOException;
+import java.io.Reader;
import java.util.ArrayList;
import java.util.List;
+import static org.nuiton.i18n.I18n.t;
+
/**
* @author kmorin <kmorin(a)codelutin.com>
* @since x.x
@@ -38,4 +54,51 @@
RangeTopiaDao dao = getPersistenceContext().getRangeDao();
return new ArrayList<>(dao.findAll());
}
+
+ public List<EtatAttente> getAllEtatAttente() {
+ EtatAttenteTopiaDao dao = getPersistenceContext().getEtatAttenteDao();
+ return new ArrayList<>(dao.findAll());
+ }
+
+ public List<Client> getAllClients() {
+ ClientTopiaDao dao = getPersistenceContext().getClientDao();
+ return new ArrayList<>(dao.findAll());
+ }
+
+ public List<Client> importClients(File csvFile) throws IOException {
+ List<Client> result = new ArrayList<>();
+ ClientTopiaDao dao = getPersistenceContext().getClientDao();
+
+ Reader reader = Files.newReader(csvFile, Charsets.UTF_8);
+ ClientImportModel clientImportModel = new ClientImportModel(';');
+ try {
+ Import<Client> importer = Import.newImport(clientImportModel, reader);
+ try {
+ for (Client client : importer) {
+ result.add(dao.create(client));
+ }
+ getPersistenceContext().commit();
+
+ } finally {
+ IOUtils.closeQuietly(importer);
+ }
+ reader.close();
+
+ } catch (IOException e) {
+ throw new IOException(t("faxtomail.service.referential.import.clients.error", csvFile), e);
+
+ } catch (ImportRuntimeException e) {
+ String message;
+ if (e.getCause() != null) {
+ message = e.getCause().getMessage();
+ } else {
+ message = e.getMessage();
+ }
+ throw new ApplicationTechnicalException(message, e);
+
+ } finally {
+ IOUtils.closeQuietly(reader);
+ }
+ return result;
+ }
}
Added: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/imports/ClientImportModel.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/imports/ClientImportModel.java (rev 0)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/imports/ClientImportModel.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,47 @@
+package com.franciaflex.faxtomail.services.service.imports;
+
+import com.franciaflex.faxtomail.persistence.entities.Client;
+import com.franciaflex.faxtomail.persistence.entities.ClientImpl;
+import org.nuiton.csv.ValueParser;
+import org.nuiton.csv.ext.AbstractImportModel;
+
+import java.text.ParseException;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class ClientImportModel extends AbstractImportModel<Client> {
+
+ public ClientImportModel(char separator) {
+ super(separator);
+
+ ValueParser<String> nullParser = new ValueParser<String>() {
+ @Override
+ public String parse(String s) throws ParseException {
+ if ("NULL".equals(s)) {
+ s = null;
+ }
+ return s;
+ }
+ };
+ newMandatoryColumn("Id_Correspondance", Client.PROPERTY_ID);
+ newMandatoryColumn("Nom", Client.PROPERTY_NAME);
+ newMandatoryColumn("Caracteristique1", Client.PROPERTY_CARACTERISTIC1, nullParser);
+ newMandatoryColumn("Caracteristique2", Client.PROPERTY_CARACTERISTIC2, nullParser);
+ newMandatoryColumn("Caracteristique3", Client.PROPERTY_CARACTERISTIC3, nullParser);
+ newMandatoryColumn("Numero_Fax", Client.PROPERTY_FAX_NUMBER, nullParser);
+ newMandatoryColumn("Adresse_Mail", Client.PROPERTY_EMAIL_ADDRESS, nullParser);
+ newMandatoryColumn("Code_Client", Client.PROPERTY_CODE);
+
+ newIgnoredColumn("Societe");
+ newIgnoredColumn("Client_Top");
+ newIgnoredColumn("Objet_Message");
+ newIgnoredColumn("Destination");
+ }
+
+ @Override
+ public Client newEmptyInstance() {
+ return new ClientImpl();
+ }
+}
Modified: trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_en_GB.properties
===================================================================
--- trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_en_GB.properties 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_en_GB.properties 2014-02-25 09:19:54 UTC (rev 12)
@@ -10,6 +10,7 @@
faxtomail.service.compressZipFile.error=
faxtomail.service.config.deleteTempDirectory.error=
faxtomail.service.mkDir.error=
+faxtomail.service.referential.import.clients.error=
tutti.config.option.basedir.description=
tutti.config.option.csv.separator.description=
tutti.config.option.inceptionYear.description=
Modified: trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_fr_FR.properties
===================================================================
--- trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_fr_FR.properties 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-service/src/main/resources/i18n/faxtomail-service_fr_FR.properties 2014-02-25 09:19:54 UTC (rev 12)
@@ -10,6 +10,7 @@
faxtomail.service.compressZipFile.error=
faxtomail.service.config.deleteTempDirectory.error=
faxtomail.service.mkDir.error=
+faxtomail.service.referential.import.clients.error=
tutti.config.option.basedir.description=
tutti.config.option.csv.separator.description=
tutti.config.option.inceptionYear.description=
Modified: trunk/faxtomail-ui-swing/pom.xml
===================================================================
--- trunk/faxtomail-ui-swing/pom.xml 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/pom.xml 2014-02-25 09:19:54 UTC (rev 12)
@@ -228,7 +228,26 @@
<scope>runtime</scope>
</dependency>
+ <!--<dependency>-->
+ <!--<groupId>net.atlanticbb.tantlinger</groupId>-->
+ <!--<artifactId>shef</artifactId>-->
+ <!--</dependency>-->
+ <!--<dependency>-->
+ <!--<groupId>jtidy</groupId>-->
+ <!--<artifactId>jtidy</artifactId>-->
+ <!--</dependency>-->
+
+ <!--<dependency>-->
+ <!--<groupId>org.bushe</groupId>-->
+ <!--<artifactId>sam</artifactId>-->
+ <!--</dependency>-->
+
+ <!--<dependency>-->
+ <!--<groupId>novaworx</groupId>-->
+ <!--<artifactId>novaworx-syntax</artifactId>-->
+ <!--</dependency>-->
+
</dependencies>
<build>
Modified: trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties 2014-02-25 09:19:54 UTC (rev 12)
@@ -1,24 +1,3 @@
-###
-# #%L
-# FaxToMail :: UI
-# %%
-# Copyright (C) 2014 Franciaflex
-# %%
-# 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 3 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, see
-# <http://www.gnu.org/licenses/gpl-3.0.html>.
-# #L%
-###
# Generated by org.codehaus.mojo.license.AddThirdPartyMojo
#-------------------------------------------------------------------------------
# Already used licenses in project :
@@ -42,11 +21,12 @@
# - MPL 1.1
# - New BSD License
# - The Apache Software License, Version 2.0
+# - The H2 License, Version 1.0
# - license.txt
#-------------------------------------------------------------------------------
# Please fill the missing licenses for dependencies :
#
#
-#Fri Jan 31 09:36:44 CET 2014
+#Tue Feb 25 10:11:09 CET 2014
commons-primitives--commons-primitives--1.0=The Apache Software License, Version 2.0
dom4j--dom4j--1.6.1=BSD License
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReplyAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReplyAction.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReplyAction.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,31 @@
+package com.franciaflex.faxtomail.ui.swing.actions;
+
+import com.franciaflex.faxtomail.ui.swing.content.demande.ReplyFormUI;
+import com.franciaflex.faxtomail.ui.swing.content.demande.ReplyFormUIHandler;
+import com.franciaflex.faxtomail.ui.swing.content.demande.ReplyFormUIModel;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class ReplyAction extends AbstractFaxToMailAction<ReplyFormUIModel, ReplyFormUI, ReplyFormUIHandler> {
+
+ private static final Log log = LogFactory.getLog(ReplyAction.class);
+
+ public ReplyAction(ReplyFormUIHandler handler) {
+ super(handler, false);
+ }
+
+ @Override
+ public void doAction() throws Exception {
+ log.warn("do reply");
+ }
+
+ @Override
+ public void postSuccessAction() {
+ super.postSuccessAction();
+ handler.closeDialog();
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,43 @@
+package com.franciaflex.faxtomail.ui.swing.actions;
+
+import com.franciaflex.faxtomail.persistence.entities.Email;
+import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
+import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
+import com.franciaflex.faxtomail.ui.swing.content.demande.DemandeUIHandler;
+import com.franciaflex.faxtomail.ui.swing.content.demande.DemandeUIModel;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class SaveDemandeAction extends ShowDemandeListAction {
+
+ protected DemandeUIModel demandeModel;
+
+ public SaveDemandeAction(MainUIHandler handler) {
+ super(handler);
+ }
+
+ public SaveDemandeAction(DemandeUIHandler handler) {
+ super(handler.getContext().getMainUI().getHandler());
+ }
+
+ public DemandeUIModel getDemandeModel() {
+ return demandeModel;
+ }
+
+ public void setDemandeModel(DemandeUIModel demandeModel) {
+ this.demandeModel = demandeModel;
+ }
+
+ @Override
+ public void doAction() throws Exception {
+ FaxToMailUser currentUser = getContext().getCurrentUser();
+ Email currentEmail = getContext().getCurrentEmail();
+ Email email = demandeModel.toEntity(currentEmail);
+ getContext().getEmailService().saveEmail(email, currentUser);
+
+ super.doAction();
+ }
+
+}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -52,7 +52,7 @@
Email currentEmail = getContext().getCurrentEmail();
if (!getContext().getCurrentUser().equals(currentEmail.getTakenBy())) {
displayWarningMessage(t("faxtomail.alert.alreadyTakenBy.title"),
- t("faxtomail.alert.alreadyTakenBy.message", currentEmail.getTakenBy().getName()));
+ t("faxtomail.alert.alreadyTakenBy.message", currentEmail.getTakenBy().toString()));
}
}
}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,23 @@
+package com.franciaflex.faxtomail.ui.swing.actions;
+
+import com.franciaflex.faxtomail.ui.swing.content.demande.DemandeUIModel;
+import com.franciaflex.faxtomail.ui.swing.content.demande.MailFolderChooserUI;
+import com.franciaflex.faxtomail.ui.swing.content.demande.MailFolderChooserUIHandler;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class TransmitAction extends AbstractFaxToMailAction<DemandeUIModel, MailFolderChooserUI, MailFolderChooserUIHandler> {
+
+ public TransmitAction(MailFolderChooserUIHandler handler) {
+ super(handler, false);
+ }
+
+ @Override
+ public void doAction() throws Exception {
+ SaveDemandeAction action = getContext().getActionFactory().createLogicAction(getContext().getMainUI().getHandler(), SaveDemandeAction.class);
+ action.setDemandeModel(getModel());
+ getContext().getActionEngine().runAction(action);
+ }
+}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -341,6 +341,7 @@
Email currentEmail = getContext().getCurrentEmail();
screenTitle = currentEmail.getObject();
icon = JAXXWidgetUtil.createActionIcon("email");
+ rightDecoration = ((DemandeUI) screenUI).getTopToolBar();
break;
default:
@@ -366,10 +367,7 @@
ui.getBody().setTitle(screenTitle);
ui.getBody().add(currentBody);
ui.getBody().setLeftDecoration(new JLabel(icon));
-// ui.getBody().setRightDecoration(rightDecoration);
- // Fix #2510: [AIDE] perte de l'aide contextuelle sur ecran campagne
- //FIXME tchemit-2013-05-28 Find out why
-// ui.getBody().getRightDecoration().setVisible(true);
+ ui.getBody().setRightDecoration(rightDecoration);
}
}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -66,9 +66,9 @@
n("faxtomail.demandeList.table.header.receptionDate"),
n("faxtomail.demandeList.table.header.receptionDate")));
- put(Email.PROPERTY_CLIENT,
+ put(Email.PROPERTY_CLIENT_CODE,
ColumnIdentifier.<Email>newReadOnlyId(
- Email.PROPERTY_CLIENT,
+ Email.PROPERTY_CLIENT_CODE,
n("faxtomail.demandeList.table.header.client"),
n("faxtomail.demandeList.table.header.client")));
@@ -126,9 +126,9 @@
n("faxtomail.demandeList.table.header.projectReference"),
n("faxtomail.demandeList.table.header.projectReference")));
- put(Email.PROPERTY_RANGE,
+ put(Email.PROPERTY_RANGE_ROW,
ColumnIdentifier.<Email>newReadOnlyId(
- Email.PROPERTY_RANGE,
+ Email.PROPERTY_RANGE_ROW,
n("faxtomail.demandeList.table.header.range"),
n("faxtomail.demandeList.table.header.range")));
@@ -140,7 +140,7 @@
}};
- protected DemandeTableModel(TableColumnModelExt columnModel) {
+ public DemandeTableModel(TableColumnModelExt columnModel) {
super(columnModel, false, false);
}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -20,7 +20,8 @@
* #L%
*/
BeanFilterableComboBox {
- showReset: true;
+ showReset: false;
+ showDecorator: false;
bean: {model};
}
@@ -32,6 +33,17 @@
_selectOnFocus: {true};
}
+.rightLabel {
+ horizontalAlignment: {SwingConstants.RIGHT};
+ font-style: "italic";
+}
+
+#topToolBar {
+ floatable: false;
+ opaque: false;
+ borderPainted: false;
+}
+
#objectLabel {
text: "faxtomail.demande.object.label";
}
@@ -60,6 +72,10 @@
text: "faxtomail.demande.client.label";
}
+#clientField {
+ text: {model.getClientCode()};
+}
+
#docTypeLabel {
text: "faxtomail.demande.docType.label";
}
@@ -69,14 +85,6 @@
selectedItem: {model.getDemandType()};
}
-#demandeNumberLabel {
- text: "faxtomail.demande.demandeNumber.label";
-}
-
-#demandeNumberField {
- text: {model.getCommandNb()};
-}
-
#ediCodeNumberLabel {
text: "faxtomail.demande.ediCodeNumber.label";
}
@@ -99,9 +107,8 @@
text: "faxtomail.demande.status.label";
}
-#statusComboBox {
- property: demandStatus;
- selectedItem: {model.getDemandStatus()};
+#statusField {
+ text: { model.getDemandStatus().getLabel() };
}
#etatAttenteLabel {
@@ -116,28 +123,9 @@
text: {model.getProjectReference()};
}
-#savNumberLabel {
- text: "faxtomail.demande.savNumber.label";
-}
-
-#savNumberField {
- text: {model.getSavNumber()};
-}
-
-#finishedProductsLabel {
- text: "faxtomail.demande.finishedProducts.label";
-}
-
-//#finishedProductsField {
-//
-//}
-
-#gammeLabel {
- text: "faxtomail.demande.gamme.label";
-}
-
#messageLabel {
text: "faxtomail.demande.message.label";
+ verticalAlignment: {SwingConstants.TOP};
}
#takenByLabel {
@@ -145,7 +133,7 @@
}
#takenByField {
- text: {model.getTakenBy().getName()};
+ text: {String.valueOf(model.getTakenBy())};
}
#firstOpenedByLabel {
@@ -153,7 +141,7 @@
}
#firstOpenedByField {
- text: {model.getFirstOpeningUserName()};
+ text: {model.getFirstOpeningUser()};
}
#firstOpeningDateLabel {
@@ -169,7 +157,7 @@
}
#lastModifiedByField {
- text: {model.getLastModificationUserName()};
+ text: {model.getLastModificationUser()};
}
#lastModificationDateLabel {
@@ -180,27 +168,42 @@
text: {SimpleDateFormat.getDateTimeInstance().format(model.getLastModificationDate())};
}
+#rangeTable {
+ selectionMode: {ListSelectionModel.SINGLE_SELECTION};
+}
+
#backButton {
- text: "faxtomail.demande.back.button.label";
- actionIcon: cancel;
- _applicationAction: {com.franciaflex.faxtomail.ui.swing.actions.ShowDemandeListAction.class};
+ text: "faxtomail.demande.back.button.label";
+ i18nMnemonic : "faxtomail.demande.back.button.mnemonic";
+ actionIcon: cancel;
+ _applicationAction: {com.franciaflex.faxtomail.ui.swing.actions.ShowDemandeListAction.class};
}
#saveButton {
- text: "faxtomail.demande.save.button.label";
- actionIcon: save;
+ text: "faxtomail.demande.save.button.label";
+ i18nMnemonic : "faxtomail.demande.save.button.mnemonic";
+ actionIcon: save;
}
#transmitButton {
- text: "faxtomail.demande.transmit.button.label";
- actionIcon: transmit;
+ text: "faxtomail.demande.transmit.button.label";
+ i18nMnemonic : "faxtomail.demande.transmit.button.mnemonic";
+ actionIcon: transmit;
}
#printButton {
text: "faxtomail.demande.print.button.label";
- actionIcon: print;
+ i18nMnemonic : "faxtomail.demande.print.button.mnemonic";
+ actionIcon: print;
}
#archiveButton {
text: "faxtomail.demande.archive.button.label";
+ i18nMnemonic : "faxtomail.demande.archive.button.mnemonic";
}
+
+#replyButton {
+ text: "faxtomail.demande.reply.button.label";
+ i18nMnemonic : "faxtomail.demande.reply.button.mnemonic";
+ actionIcon: reply;
+}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -26,18 +26,25 @@
com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext
com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI
com.franciaflex.faxtomail.ui.swing.util.FaxToMailUIUtil
+ com.franciaflex.faxtomail.ui.swing.util.attachment.ButtonAttachment
+ com.franciaflex.faxtomail.ui.swing.util.history.ButtonHistory
com.franciaflex.faxtomail.persistence.entities.Email
com.franciaflex.faxtomail.persistence.entities.DemandType
com.franciaflex.faxtomail.persistence.entities.DemandStatus
com.franciaflex.faxtomail.persistence.entities.Range
com.franciaflex.faxtomail.persistence.entities.Priority
+ com.franciaflex.faxtomail.persistence.entities.EtatAttente
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
org.jdesktop.swingx.JXDatePicker
org.jdesktop.swingx.JXTitledPanel
+ org.jdesktop.swingx.JXTable
+ javax.swing.ListSelectionModel
+ javax.swing.SwingConstants
+
java.text.SimpleDateFormat
java.util.Date
</import>
@@ -53,209 +60,189 @@
<DemandeUIModel id='model'
initializer='getContextValue(DemandeUIModel.class)'/>
- <JScrollPane id='demandeScrollPane' constraints='BorderLayout.CENTER'>
- <JPanel layout='{new GridLayout(0,1)}'>
+ <JToolBar id='topToolBar'>
+ <ButtonHistory id="historyButton"/>
+ <ButtonAttachment id="attachmentsButton"
+ constructorParams="model"/>
+ </JToolBar>
- <Table fill='horizontal'>
- <row>
- <cell>
- <JLabel id='receivedDateLabel'/>
- </cell>
- <cell>
- <JLabel id='receivedDateField'/>
- </cell>
+ <JSplitPane constraints='BorderLayout.CENTER'
+ orientation="{JSplitPane.VERTICAL_SPLIT}">
- <cell>
- <JLabel id='senderLabel'/>
- </cell>
- <cell>
- <JLabel id='senderField'/>
- </cell>
+ <JSplitPane orientation="{JSplitPane.HORIZONTAL_SPLIT}">
- <cell>
- <JLabel id='clientLabel'/>
- </cell>
- <cell weightx='1'>
- <JTextField id='clientField'/><!-- TODO list of clients -->
- </cell>
- </row>
- </Table>
+ <JScrollPane>
- <Table fill='horizontal'>
- <row>
- <cell anchor='east'>
- <JLabel id='objectLabel'/>
- </cell>
- <cell weightx='1' columns="5">
- <JTextField id='objectField'
- onKeyReleased='handler.setText(event, "object")'/>
- </cell>
- </row>
+ <Table fill='horizontal'>
+ <row>
+ <cell>
+ <JLabel id='receivedDateLabel'/>
+ </cell>
+ <cell>
+ <JLabel id='receivedDateField'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='senderLabel'/>
+ </cell>
+ <cell>
+ <JLabel id='senderField'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='objectLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <JTextField id='objectField'
+ onKeyReleased='handler.setText(event, "object")'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='clientLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <JTextField id='clientField'
+ onKeyReleased='handler.setText(event, "clientCode")'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='docTypeLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <BeanFilterableComboBox id='docTypeComboBox'
+ constructorParams='this'
+ genericType="DemandType"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='ediCodeNumberLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <JTextField id='ediCodeNumberField'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='projectReferenceLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <JTextField id='projectReferenceField'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='priorityLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <BeanFilterableComboBox id='priorityComboBox'
+ constructorParams='this'
+ genericType="Priority"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='statusLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <JLabel id='statusField'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id='etatAttenteLabel'/>
+ </cell>
+ <cell weightx='1'>
+ <BeanFilterableComboBox id='etatAttenteComboBox'
+ constructorParams='this'
+ genericType="EtatAttente"/>
+ </cell>
+ </row>
- <row>
- <cell anchor='east'>
- <JLabel id='docTypeLabel'/>
- </cell>
- <cell weightx='1'>
- <BeanFilterableComboBox id='docTypeComboBox'
- constructorParams='this'
- genericType="DemandType"/>
- </cell>
+ <!--<row>-->
+ <!--<cell anchor='east'>-->
+ <!--<JLabel id='gammeLabel'/>-->
+ <!--</cell>-->
+ <!--<cell weightx='1' columns='6'>-->
+ <!--<BeanFilterableComboBox id='gammeComboBox'-->
+ <!--constructorParams='this'-->
+ <!--genericType="Range"/>-->
+ <!--</cell>-->
+ <!--</row>-->
+ <row>
+ <cell>
+ <JLabel id="takenByLabel"/>
+ </cell>
+ <cell weightx='1' >
+ <JLabel id="takenByField"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id="firstOpenedByLabel"/>
+ </cell>
+ <cell>
+ <JLabel id="firstOpenedByField"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id="firstOpeningDateLabel"/>
+ </cell>
+ <cell weightx='1'>
+ <JLabel id="firstOpeningDateField"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id="lastModifiedByLabel"/>
+ </cell>
+ <cell>
+ <JLabel id="lastModifiedByField"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id="lastModificationDateLabel"/>
+ </cell>
+ <cell weightx='1'>
+ <JLabel id="lastModificationDateField"/>
+ </cell>
+ </row>
- <cell anchor='east'>
- <JLabel id='demandeNumberLabel'/>
- </cell>
- <cell weightx='1'>
- <JTextField id='demandeNumberField'
- onKeyReleased='handler.setText(event, "commandNb")'/>
- </cell>
+ </Table>
- <cell anchor='east'>
- <JLabel id='ediCodeNumberLabel'/>
- </cell>
- <cell weightx='1'>
- <JTextField id='ediCodeNumberField'/>
- </cell>
- </row>
+ </JScrollPane>
- <row>
- <cell anchor='east'>
- <JLabel id='priorityLabel'/>
- </cell>
- <cell weightx='1'>
- <BeanFilterableComboBox id='priorityComboBox'
- constructorParams='this'
- genericType="Priority"/>
- </cell>
+ <JPanel layout="{new BorderLayout()}">
+ <JLabel id='messageLabel'
+ constraints="BorderLayout.NORTH"/>
+ <JScrollPane id='commentPane'
+ constraints="BorderLayout.CENTER">
+ <JEditorPane id='messageField'/>
+ </JScrollPane>
+ </JPanel>
- <cell anchor='east'>
- <JLabel id='statusLabel'/>
- </cell>
- <cell weightx='1'>
- <BeanFilterableComboBox id='statusComboBox'
- constructorParams='this'
- genericType="DemandStatus"/>
- </cell>
+ </JSplitPane>
- <cell anchor='east'>
- <JLabel id='etatAttenteLabel'/>
- </cell>
- <cell weightx='1'>
- <BeanFilterableComboBox id='etatAttenteComboBox'
- constructorParams='this'
- genericType="DemandStatus"/>
- </cell>
- </row>
+ <JScrollPane>
+ <JXTable id='rangeTable'/>
+ </JScrollPane>
- <row>
- <cell anchor='east'>
- <JLabel id='projectReferenceLabel'/>
- </cell>
- <cell weightx='1'>
- <JTextField id='projectReferenceField'/>
- </cell>
+ </JSplitPane>
- <cell anchor='east'>
- <JLabel id='savNumberLabel'/>
- </cell>
- <cell weightx='1'>
- <JTextField id='savNumberField'/>
- </cell>
-
- <cell anchor='east'>
- <JLabel id='finishedProductsLabel'/>
- </cell>
- <cell weightx='1'>
- <JTextField id='finishedProductsField'/>
- </cell>
- </row>
-
- <row>
- <cell anchor='east'>
- <JLabel id='gammeLabel'/>
- </cell>
- <cell weightx='1' columns='6'>
- <BeanFilterableComboBox id='gammeComboBox'
- constructorParams='this'
- genericType="Range"/>
- </cell>
- </row>
-
- <row>
- <cell anchor='east'>
- <JLabel id='messageLabel'/>
- </cell>
- <cell weightx='1' columns='5'>
- <JScrollPane id='commentPane'>
- <JTextArea id='messageField'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
-
- <Table fill='horizontal'>
- <row>
- <cell>
- <JLabel id="takenByLabel"/>
- </cell>
- <cell weightx='1' >
- <JLabel id="takenByField"/>
- </cell>
- <cell>
- <JLabel id="firstOpenedByLabel"/>
- </cell>
- <cell>
- <JLabel id="firstOpenedByField"/>
- </cell>
- <cell>
- <JLabel id="firstOpeningDateLabel"/>
- </cell>
- <cell weightx='1' >
- <JLabel id="firstOpeningDateField"/>
- </cell>
- <cell>
- <JLabel id="lastModifiedByLabel"/>
- </cell>
- <cell>
- <JLabel id="lastModifiedByField"/>
- </cell>
- <cell>
- <JLabel id="lastModificationDateLabel"/>
- </cell>
- <cell weightx='1'>
- <JLabel id="lastModificationDateField"/>
- </cell>
- </row>
-
- </Table>
-
- <JPanel id="attachmentsPanel"
- border='{BorderFactory.createTitledBorder("Pièces jointes")}'
- layout='{new GridLayout(0,1)}'>
- <JPanel layout="{new java.awt.FlowLayout(java.awt.FlowLayout.LEADING)}">
- <JLabel text="Fax - TIF (25ko)"/>
- <JButton text="Voir"/>
- <JButton text="Editer"/>
- <JButton text="Supprimer"/>
- </JPanel>
- <JPanel layout="{new java.awt.FlowLayout(java.awt.FlowLayout.LEADING)}">
- <JLabel text="Plans - DXF (254ko)"/>
- <JButton text="Voir"/>
- <JButton text="Supprimer"/>
- </JPanel>
-
- <JButton text="Ajouter"/>
- </JPanel>
-
- </JPanel>
- </JScrollPane>
-
- <JPanel constraints='BorderLayout.SOUTH'>
+ <JPanel layout='{new GridLayout(1,0)}'
+ constraints='BorderLayout.SOUTH'>
<JButton id="backButton"/>
- <JButton id="saveButton"/>
- <JButton id="transmitButton"/>
+ <JButton id="saveButton" onActionPerformed="handler.saveDemande()"/>
+ <JButton id="transmitButton" onActionPerformed="handler.transmitDemande()"/>
<JButton id="printButton"/>
<JButton id="archiveButton"/>
+ <JButton id="replyButton" onActionPerformed="handler.reply()"/>
</JPanel>
</JPanel>
\ No newline at end of file
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -23,24 +23,51 @@
*/
+import com.franciaflex.faxtomail.persistence.entities.Client;
import com.franciaflex.faxtomail.persistence.entities.Company;
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.MailFolder;
+import com.franciaflex.faxtomail.persistence.entities.Range;
+import com.franciaflex.faxtomail.persistence.entities.RangeRow;
import com.franciaflex.faxtomail.services.service.ReferentielService;
+import com.franciaflex.faxtomail.ui.swing.actions.SaveDemandeAction;
+import com.franciaflex.faxtomail.ui.swing.actions.ShowDemandeAction;
import com.franciaflex.faxtomail.ui.swing.content.search.SearchUI;
import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailUIHandler;
import com.franciaflex.faxtomail.ui.swing.util.CloseableUI;
import com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI;
import jaxx.runtime.validator.swing.SwingValidator;
+import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.jdesktop.swingx.JXTable;
+import org.jdesktop.swingx.table.DefaultTableColumnModelExt;
+import org.jdesktop.swingx.table.TableColumnModelExt;
+import org.nuiton.jaxx.application.swing.table.AbstractApplicationTableModel;
+import org.nuiton.jaxx.application.swing.table.MoveToNextEditableCellAction;
+import org.nuiton.jaxx.application.swing.table.MoveToNextEditableRowAction;
+import org.nuiton.jaxx.application.swing.table.MoveToPreviousEditableCellAction;
+import org.nuiton.jaxx.application.swing.table.MoveToPreviousEditableRowAction;
import javax.swing.*;
+import javax.swing.event.ChangeListener;
+import javax.swing.event.TableModelEvent;
+import javax.swing.event.TableModelListener;
+import javax.swing.table.TableCellEditor;
+import javax.swing.text.Document;
+import javax.swing.text.html.HTMLEditorKit;
+import javax.swing.text.html.StyleSheet;
+import java.awt.*;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Date;
import java.util.List;
import static org.nuiton.i18n.I18n.t;
@@ -63,6 +90,8 @@
*/
// private final PersistenceService persistenceService;
+ protected RangeTableModel rangeTableModel;
+
@Override
public void beforeInit(DemandeUI ui) {
@@ -83,9 +112,144 @@
ReferentielService referentielService = getContext().getReferentielService();
initBeanFilterableComboBox(ui.getDocTypeComboBox(), referentielService.getAllDemandType(), model.getDemandType());
- initBeanFilterableComboBox(ui.getStatusComboBox(), referentielService.getAllDemandStatus(), model.getDemandStatus());
initBeanFilterableComboBox(ui.getPriorityComboBox(), referentielService.getAllPriority(), model.getPriority());
- initBeanFilterableComboBox(ui.getGammeComboBox(), referentielService.getAllRange(), null);
+ initBeanFilterableComboBox(ui.getEtatAttenteComboBox(), referentielService.getAllEtatAttente(), model.getEtatAttente());
+
+// HTMLEditorPane editor = ui.getMessageField();
+// HTMLEditorActionFactory.createFontSizeActionList();
+// HTMLEditorActionFactory.createInlineActionList();
+// HTMLEditorActionFactory.createBlockElementActionList();
+
+ // create some simple html as a string
+// String htmlString = "<html>\n"
+// + "<body>\n"
+// + "<h1>Welcome!</h1>\n"
+// + "<h2>This is an H2 header</h2>\n"
+// + "<p>This is some sample text</p>\n"
+// + "<p><a href=\"http://devdaily.com/blog/\">devdaily blog</a></p>\n"
+// + "</body>\n";
+
+ // create a document, set it on the jeditorpane, then add the html
+// editor.setText(htmlString);
+
+ // init table
+ final JXTable table = ui.getRangeTable();
+
+ TableColumnModelExt columnModel = new DefaultTableColumnModelExt();
+ addComboDataColumnToModel(columnModel,
+ RangeTableModel.RANGE_COLUMN,
+ getDecorator(Range.class, null),
+ referentielService.getAllRange());
+ addColumnToModel(columnModel,
+ RangeTableModel.COMMAND_NUMBER_COLUMN);
+ addIntegerColumnToModel(columnModel,
+ RangeTableModel.PRODUCT_QUANTITY_COLUMN,
+ null,
+ table);
+ addIntegerColumnToModel(columnModel,
+ RangeTableModel.SAV_QUANTITY_COLUMN,
+ null,
+ table);
+
+ rangeTableModel = new RangeTableModel(columnModel);
+ rangeTableModel.setRows(new ArrayList<RangeRow>(model.getRangeRow()));
+ table.setModel(rangeTableModel);
+ table.setColumnModel(columnModel);
+ table.getTableHeader().setReorderingAllowed(false);
+
+ final MoveToNextEditableCellAction nextCellAction =
+ MoveToNextEditableCellAction.newAction(rangeTableModel, table);
+ final MoveToPreviousEditableCellAction previousCellAction =
+ MoveToPreviousEditableCellAction.newAction(rangeTableModel, table);
+
+ final MoveToNextEditableRowAction nextRowAction =
+ MoveToNextEditableRowAction.newAction(rangeTableModel, table);
+ final MoveToPreviousEditableRowAction previousRowAction =
+ MoveToPreviousEditableRowAction.newAction(rangeTableModel, table);
+
+ KeyAdapter keyAdapter = new KeyAdapter() {
+
+ @Override
+ public void keyPressed(KeyEvent e) {
+ TableCellEditor editor = table.getCellEditor();
+
+ int keyCode = e.getKeyCode();
+ if (keyCode == KeyEvent.VK_LEFT ||
+ (keyCode == KeyEvent.VK_TAB && e.isShiftDown())) {
+ e.consume();
+ if (editor != null) {
+ editor.stopCellEditing();
+ }
+ previousCellAction.actionPerformed(null);
+
+ } else if (keyCode == KeyEvent.VK_RIGHT ||
+ keyCode == KeyEvent.VK_TAB) {
+ e.consume();
+ if (editor != null) {
+ editor.stopCellEditing();
+ }
+ nextCellAction.actionPerformed(null);
+
+ } else if (keyCode == KeyEvent.VK_UP ||
+ (keyCode == KeyEvent.VK_ENTER && e.isShiftDown())) {
+ e.consume();
+ if (editor != null) {
+ editor.stopCellEditing();
+ }
+ previousRowAction.actionPerformed(null);
+
+ } else if (e.getKeyCode() == KeyEvent.VK_ENTER ||
+ keyCode == KeyEvent.VK_DOWN) {
+ e.consume();
+ if (editor != null) {
+ editor.stopCellEditing();
+ }
+ nextRowAction.actionPerformed(null);
+ }
+ }
+ };
+
+ table.addKeyListener(keyAdapter);
+
+// Highlighter highlighter = new Highlighter() {
+// @Override
+// public Component highlight(Component renderer, ComponentAdapter adapter) {
+// int viewRow = adapter.row;
+// int modelRow = adapter.convertRowIndexToModel(viewRow);
+// Email row = (Email) tableModel.getEntry(modelRow);
+// boolean highlight = row.getTakenBy() == null;
+// if (highlight) {
+// Font font = renderer.getFont();
+// renderer.setFont(font.deriveFont(Font.BOLD));
+// }
+// return renderer;
+// }
+//
+// @Override
+// public void addChangeListener(ChangeListener l) {
+// }
+//
+// @Override
+// public void removeChangeListener(ChangeListener l) {
+// }
+//
+// @Override
+// public ChangeListener[] getChangeListeners() {
+// return new ChangeListener[0];
+// }
+// };
+// table.addHighlighter(highlighter);
+
+ rangeTableModel.addTableModelListener(new TableModelListener() {
+ @Override
+ public void tableChanged(TableModelEvent e) {
+ if (e.getType() == TableModelEvent.INSERT) {
+ RangeRow row = rangeTableModel.getEntry(e.getFirstRow());
+ getModel().addRangeRow(row);
+ }
+ }
+ });
+
}
@Override
@@ -119,4 +283,25 @@
public SwingValidator<DemandeUIModel> getValidator() {
return null;
}
+
+ public void saveDemande() {
+ SaveDemandeAction action = getContext().getActionFactory().createLogicAction(this, SaveDemandeAction.class);
+ action.setDemandeModel(getModel());
+ getContext().getActionEngine().runAction(action);
+ }
+
+ public void transmitDemande() {
+ MailFolderChooserUI dialogContent = new MailFolderChooserUI(ui);
+ dialogContent.setModel(getModel());
+ openDialog(dialogContent, t("faxtomail.chooseMailFolder.title"), new Dimension(300, 500));
+ }
+
+ public void reply() {
+ ReplyFormUI dialogContent = new ReplyFormUI(ui);
+ ReplyFormUIModel model = dialogContent.getModel();
+ String client = getModel().getClientCode();
+ model.setObject(client == null ? null : client);
+ model.setTo(getModel().getSenderEmailAddress());
+ openFrame(dialogContent, t("faxtomail.reply.title", getModel().getObject()), new Dimension(800, 600));
+ }
}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -22,6 +22,7 @@
* #L%
*/
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
import com.franciaflex.faxtomail.persistence.entities.Client;
import com.franciaflex.faxtomail.persistence.entities.DemandStatus;
import com.franciaflex.faxtomail.persistence.entities.DemandType;
@@ -31,15 +32,20 @@
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
import com.franciaflex.faxtomail.persistence.entities.History;
import com.franciaflex.faxtomail.persistence.entities.HistoryType;
+import com.franciaflex.faxtomail.persistence.entities.MailFolder;
import com.franciaflex.faxtomail.persistence.entities.Priority;
+import com.franciaflex.faxtomail.persistence.entities.RangeRow;
import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailBeanUIModel;
+import com.franciaflex.faxtomail.ui.swing.util.attachment.AttachmentModelAware;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.util.beans.Binder;
import org.nuiton.util.beans.BinderFactory;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
+import java.util.List;
import static org.nuiton.i18n.I18n.t;
@@ -47,7 +53,7 @@
* @author kmorin <kmorin(a)codelutin.com>
* @since x.x
*/
-public class DemandeUIModel extends AbstractFaxToMailBeanUIModel<Email, DemandeUIModel> {
+public class DemandeUIModel extends AbstractFaxToMailBeanUIModel<Email, DemandeUIModel> implements AttachmentModelAware {
private static final Log log = LogFactory.getLog(DemandeUIModel.class);
@@ -68,6 +74,11 @@
super(fromBeanBinder, toBeanBinder);
}
+ public Email toEntity(Email email) {
+ toBeanBinder.copy((DemandeUIModel) this, email);
+ return email;
+ }
+
@Override
public void fromEntity(Email entity) {
super.fromEntity(entity);
@@ -125,14 +136,14 @@
return editObject.getObject();
}
- public void setClient(Client client) {
- Object oldValue = getClient();
- editObject.setClient(client);
- firePropertyChanged(Email.PROPERTY_CLIENT, oldValue, client);
+ public void setClientCode(String clientCode) {
+ Object oldValue = getClientCode();
+ editObject.setClientCode(clientCode);
+ firePropertyChanged(Email.PROPERTY_CLIENT_CODE, oldValue, clientCode);
}
- public Client getClient() {
- return editObject.getClient();
+ public String getClientCode() {
+ return editObject.getClientCode();
}
public void setEtatAttente(EtatAttente etatAttente) {
@@ -270,8 +281,8 @@
return firstOpeningHistory;
}
- public String getFirstOpeningUserName() {
- return getFirstOpeningHistory().getFaxToMailUser().getName();
+ public String getFirstOpeningUser() {
+ return String.valueOf(getFirstOpeningHistory().getFaxToMailUser());
}
public Date getFirstOpeningDate() {
@@ -285,11 +296,11 @@
return lastModificationHistory;
}
- public String getLastModificationUserName() {
+ public String getLastModificationUser() {
String result;
FaxToMailUser user = getLastModificationHistory().getFaxToMailUser();
if (user != null) {
- result = user.getName();
+ result = user.toString();
} else {
result = t("faxtomail.systemUser");
}
@@ -300,8 +311,67 @@
return getLastModificationHistory().getModificationDate();
}
+ @Override
+ public Collection<Attachment> getAttachment() {
+ return editObject.getAttachment();
+ }
@Override
+ public void addAllAttachment(Collection<Attachment> attachment) {
+ editObject.addAllAttachment(attachment);
+ firePropertyChange(Email.PROPERTY_ATTACHMENT, null, getAttachment());
+ }
+
+ @Override
+ public void addAttachment(Attachment attachment) {
+ editObject.addAttachment(attachment);
+ firePropertyChange(Email.PROPERTY_ATTACHMENT, null, getAttachment());
+ }
+
+ @Override
+ public void removeAttachment(Attachment attachment) {
+ editObject.removeAttachment(attachment);
+ firePropertyChange(Email.PROPERTY_ATTACHMENT, null, getAttachment());
+ }
+
+ public void setAttachment(Collection<Attachment> attachment) {
+ editObject.setAttachment(attachment);
+ firePropertyChange(Email.PROPERTY_ATTACHMENT, null, getAttachment());
+ }
+
+ public Collection<RangeRow> getRangeRow() {
+ return editObject.getRangeRow();
+ }
+
+ public void addRangeRow(RangeRow rangeRow) {
+ editObject.addRangeRow(rangeRow);
+ firePropertyChange(Email.PROPERTY_RANGE_ROW, null, getRangeRow());
+ }
+
+ public void addAllRangeRow(Collection<RangeRow> rangeRow) {
+ editObject.addAllRangeRow(rangeRow);
+ firePropertyChange(Email.PROPERTY_RANGE_ROW, null, getRangeRow());
+ }
+
+ public void removeRangeRow(RangeRow rangeRow) {
+ editObject.removeRangeRow(rangeRow);
+ firePropertyChange(Email.PROPERTY_RANGE_ROW, null, getRangeRow());
+ }
+
+ public void setRangeRow(Collection<RangeRow> rangeRow) {
+ editObject.setRangeRow(rangeRow);
+ firePropertyChange(Email.PROPERTY_RANGE_ROW, null, getRangeRow());
+ }
+
+ public MailFolder getMailFolder() {
+ return editObject.getMailFolder();
+ }
+
+ public void setMailFolder(MailFolder mailFolder) {
+ editObject.setMailFolder(mailFolder);
+ }
+
+ @Override
protected Email newEntity() {
return new EmailImpl();
}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.css (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,20 @@
+#navigationTree {
+ font-size: "11";
+ rootVisible: false;
+ showsRootHandles: true;
+}
+
+#cancelButton {
+ actionIcon: cancel;
+ text: "faxtomail.chooseMailFolder.action.cancel";
+ toolTipText: "faxtomail.chooseMailFolder.action.cancel.tip";
+ i18nMnemonic: "faxtomail.chooseMailFolder.action.cancel.mnemonic";
+}
+
+#validateButton {
+ actionIcon: validate;
+ text: "faxtomail.chooseMailFolder.action.validate";
+ toolTipText: "faxtomail.chooseMailFolder.action.validate.tip";
+ i18nMnemonic: "faxtomail.chooseMailFolder.action.validate.mnemonic";
+ _applicationAction: {com.franciaflex.faxtomail.ui.swing.actions.TransmitAction.class};
+}
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.jaxx (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUI.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,30 @@
+<JPanel id='mailFolderChooser' layout='{new BorderLayout()}'
+ implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<DemandeUIModel, MailFolderChooserUIHandler>'>
+
+ <import>
+ com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI
+ com.franciaflex.faxtomail.ui.swing.util.FaxToMailUIUtil
+
+ javax.swing.tree.DefaultTreeModel
+ </import>
+
+ <script><![CDATA[
+
+ public MailFolderChooserUI(FaxToMailUI parentUI) {
+ FaxToMailUIUtil.setParentUI(this, parentUI);
+ }
+
+ ]]></script>
+
+ <DemandeUIModel id='model' javaBean='null'/>
+
+ <JScrollPane constraints='BorderLayout.CENTER'>
+ <JTree id="navigationTree"/>
+ </JScrollPane>
+
+ <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'>
+ <JButton id='cancelButton' onActionPerformed='handler.cancel()'/>
+ <JButton id='validateButton'/>
+ </JPanel>
+
+</JPanel>
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUIHandler.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/MailFolderChooserUIHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,103 @@
+package com.franciaflex.faxtomail.ui.swing.content.demande;
+
+import com.franciaflex.faxtomail.persistence.entities.Company;
+import com.franciaflex.faxtomail.persistence.entities.MailFolder;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailUIHandler;
+import com.franciaflex.faxtomail.ui.swing.util.Cancelable;
+import jaxx.runtime.validator.swing.SwingValidator;
+
+import javax.swing.*;
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.event.TreeSelectionListener;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeCellRenderer;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeModel;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class MailFolderChooserUIHandler extends AbstractFaxToMailUIHandler<DemandeUIModel, MailFolderChooserUI> implements Cancelable {
+
+ @Override
+ public void afterInit(MailFolderChooserUI mailFolderChooserUI) {
+ initUI(mailFolderChooserUI);
+
+ JTree navigationTree = ui.getNavigationTree();
+ // init tree
+ DefaultMutableTreeNode root = new DefaultMutableTreeNode("root");
+
+ Company franciaflex = getContext().getCurrentCompany();
+ Collection<MailFolder> folders = franciaflex.getMailFolder();
+ List<MailFolder> foldersToExpand = getContext().getExpandedFolders();
+ Map<MailFolder, DefaultMutableTreeNode> nodesByFolder = new HashMap<MailFolder, DefaultMutableTreeNode>();
+ for (MailFolder folder : folders) {
+ nodesByFolder.putAll(createFolderTree(root, folder));
+ }
+
+ DefaultTreeModel treeModel = new DefaultTreeModel(root);
+ navigationTree.setModel(treeModel);
+
+ // use the folder icon for the leaf
+ DefaultTreeCellRenderer renderer = new DefaultTreeCellRenderer();
+ Icon folderIcon = renderer.getDefaultClosedIcon();
+ renderer.setLeafIcon(folderIcon);
+ navigationTree.setCellRenderer(renderer);
+
+ navigationTree.addTreeSelectionListener(new TreeSelectionListener() {
+ @Override
+ public void valueChanged(TreeSelectionEvent e) {
+ FolderTreeNode folderNode = (FolderTreeNode) e.getPath().getLastPathComponent();
+ MailFolder folder = folderNode.getMailFolder();
+ getModel().setMailFolder(folder);
+ }
+ });
+ }
+
+ @Override
+ public void onCloseUI() {
+ }
+
+ @Override
+ public SwingValidator<DemandeUIModel> getValidator() {
+ return null;
+ }
+
+ @Override
+ public void cancel() {
+ closeDialog();
+ }
+
+ @Override
+ protected JComponent getComponentToFocus() {
+ return ui.getNavigationTree();
+ }
+
+ /**
+ * Creates the tree nodes and returns a map of the nodes by folder
+ * @param parent the node parent
+ * @param folder the folder to add to the tree
+ * @return the map of the nodes by folder
+ */
+ protected Map<MailFolder, DefaultMutableTreeNode> createFolderTree(DefaultMutableTreeNode parent, MailFolder folder) {
+ Map<MailFolder, DefaultMutableTreeNode> result = new HashMap<MailFolder, DefaultMutableTreeNode>();
+
+ DefaultMutableTreeNode node = new FolderTreeNode(folder);
+ result.put(folder, node);
+
+ parent.add(node);
+ if (folder.isChildrenNotEmpty()) {
+ for (MailFolder child : folder.getChildren()) {
+ result.putAll(createFolderTree(node, child));
+ }
+ }
+ return result;
+ }
+
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/RangeTableModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/RangeTableModel.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/RangeTableModel.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,46 @@
+package com.franciaflex.faxtomail.ui.swing.content.demande;
+
+import com.franciaflex.faxtomail.persistence.entities.RangeRow;
+import com.franciaflex.faxtomail.persistence.entities.RangeRowImpl;
+import org.jdesktop.swingx.table.TableColumnModelExt;
+import org.nuiton.jaxx.application.swing.table.AbstractApplicationTableModel;
+import org.nuiton.jaxx.application.swing.table.ColumnIdentifier;
+
+import static org.nuiton.i18n.I18n.n;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class RangeTableModel extends AbstractApplicationTableModel<RangeRow> {
+
+ public static final ColumnIdentifier<RangeRow> RANGE_COLUMN = ColumnIdentifier.newId(
+ RangeRow.PROPERTY_RANGE,
+ n("faxtomail.rangeRows.table.header.range"),
+ n("faxtomail.rangeRows.table.header.range"));
+
+ public static final ColumnIdentifier<RangeRow> COMMAND_NUMBER_COLUMN = ColumnIdentifier.newId(
+ RangeRow.PROPERTY_COMMAND_NUMBER,
+ n("faxtomail.rangeRows.table.header.command_number"),
+ n("faxtomail.rangeRows.table.header.command_number"));
+
+ public static final ColumnIdentifier<RangeRow> PRODUCT_QUANTITY_COLUMN = ColumnIdentifier.newId(
+ RangeRow.PROPERTY_PRODUCT_QUANTITY,
+ n("faxtomail.rangeRows.table.header.product_column"),
+ n("faxtomail.rangeRows.table.header.product_column"));
+
+ public static final ColumnIdentifier<RangeRow> SAV_QUANTITY_COLUMN = ColumnIdentifier.newId(
+ RangeRow.PROPERTY_SAV_QUANTITY,
+ n("faxtomail.rangeRows.table.header.sav_quantity"),
+ n("faxtomail.rangeRows.table.header.sav_quantity"));
+
+ public RangeTableModel(TableColumnModelExt columnModel) {
+ super(columnModel, true, true);
+ setNoneEditableCols();
+ }
+
+ @Override
+ public RangeRow createNewRow() {
+ return new RangeRowImpl();
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.css (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,38 @@
+#fromLabel {
+ text: "faxtomail.reply.from";
+}
+
+#toLabel {
+ text: "faxtomail.reply.to";
+}
+
+#toField {
+ text: {model.getTo()};
+}
+
+#objectLabel {
+ text: "faxtomail.reply.object";
+}
+
+#objectField {
+ text: {model.getObject()};
+}
+
+#attachmentLabel {
+ text: "faxtomail.reply.attachment";
+}
+
+#cancelButton {
+ actionIcon: cancel;
+ text: "faxtomail.reply.action.cancel";
+ toolTipText: "faxtomail.reply.action.cancel.tip";
+ i18nMnemonic: "faxtomail.reply.action.cancel.mnemonic";
+}
+
+#validateButton {
+ actionIcon: validate;
+ text: "faxtomail.reply.action.validate";
+ toolTipText: "faxtomail.reply.action.validate.tip";
+ i18nMnemonic: "faxtomail.reply.action.validate.mnemonic";
+ _applicationAction: {com.franciaflex.faxtomail.ui.swing.actions.ReplyAction.class};
+}
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.jaxx (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUI.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,105 @@
+<!--
+ #%L
+ FaxToMail :: UI
+ %%
+ Copyright (C) 2014 Franciaflex
+ %%
+ 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 3 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, see
+ <http://www.gnu.org/licenses/gpl-3.0.html>.
+ #L%
+ -->
+<JPanel id='replyPanel' layout='{new BorderLayout()}'
+ implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<ReplyFormUIModel, ReplyFormUIHandler>'>
+
+ <import>
+ com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext
+ com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI
+ com.franciaflex.faxtomail.ui.swing.util.FaxToMailUIUtil
+ com.franciaflex.faxtomail.ui.swing.util.attachment.ButtonAttachment
+
+ com.franciaflex.faxtomail.persistence.entities.Email
+ com.franciaflex.faxtomail.persistence.entities.DemandType
+ com.franciaflex.faxtomail.persistence.entities.DemandStatus
+ com.franciaflex.faxtomail.persistence.entities.Range
+ com.franciaflex.faxtomail.persistence.entities.Priority
+
+ jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
+
+ org.jdesktop.swingx.JXDatePicker
+ org.jdesktop.swingx.JXTitledPanel
+
+ java.text.SimpleDateFormat
+ java.util.Date
+ </import>
+
+ <script><![CDATA[
+
+ public ReplyFormUI(FaxToMailUI parentUI) {
+ FaxToMailUIUtil.setParentUI(this, parentUI);
+ }
+
+ ]]></script>
+
+ <ReplyFormUIModel id='model'
+ initializer='getContextValue(ReplyFormUIModel.class)'/>
+
+ <Table constraints='BorderLayout.CENTER'
+ fill='both'>
+ <row>
+ <cell>
+ <JLabel id="fromLabel"/>
+ </cell>
+ <cell weightx='1'>
+ <JTextField id="fromField"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id="toLabel"/>
+ </cell>
+ <cell weightx='1'>
+ <JTextField id="toField"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel id="objectLabel"/>
+ </cell>
+ <cell weightx='1'>
+ <JTextField id="objectField"/>
+ </cell>
+ </row>
+ <row weighty='1'>
+ <cell columns='2'>
+ <JEditorPane id="message" />
+ </cell>
+ </row>
+ <row>
+ <cell columns='2'>
+ <JPanel layout='{new BorderLayout()}'>
+ <JLabel id="attachmentLabel" constraints="BorderLayout.CENTER"/>
+ <ButtonAttachment id="attachmentButton"
+ constructorParams="model"
+ constraints="BorderLayout.EAST"/>
+ </JPanel>
+ </cell>
+ </row>
+ </Table>
+
+ <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'>
+ <JButton id='cancelButton' onActionPerformed='handler.cancel()'/>
+ <JButton id='validateButton'/>
+ </JPanel>
+
+</JPanel>
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIHandler.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,54 @@
+package com.franciaflex.faxtomail.ui.swing.content.demande;
+
+import com.franciaflex.faxtomail.ui.swing.actions.ReplyAction;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailUIHandler;
+import com.franciaflex.faxtomail.ui.swing.util.Cancelable;
+import jaxx.runtime.validator.swing.SwingValidator;
+
+import javax.swing.*;
+import javax.swing.text.html.HTMLEditorKit;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIModel, ReplyFormUI> implements Cancelable {
+
+ @Override
+ public void beforeInit(ReplyFormUI ui) {
+
+ super.beforeInit(ui);
+
+ ReplyFormUIModel model = new ReplyFormUIModel();
+
+ this.ui.setContextValue(model);
+ }
+
+ @Override
+ public void afterInit(ReplyFormUI replyFormUIModel) {
+ initUI(ui);
+
+ JEditorPane editor = ui.getMessage();
+ editor.setEditorKitForContentType("text/html", new HTMLEditorKit());
+ editor.setContentType("text/html");
+ }
+
+ @Override
+ public void cancel() {
+ getParentContainer(JFrame.class).setVisible(false);
+ }
+
+ @Override
+ public void onCloseUI() {
+ }
+
+ @Override
+ public SwingValidator<ReplyFormUIModel> getValidator() {
+ return null;
+ }
+
+ @Override
+ protected JComponent getComponentToFocus() {
+ return null;
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIModel.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/ReplyFormUIModel.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,90 @@
+package com.franciaflex.faxtomail.ui.swing.content.demande;
+
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+import com.franciaflex.faxtomail.ui.swing.util.attachment.AttachmentModelAware;
+import org.jdesktop.beans.AbstractSerializableBean;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class ReplyFormUIModel extends AbstractSerializableBean implements AttachmentModelAware {
+
+ public static final String PROPERTY_TO = "to";
+ public static final String PROPERTY_FROM = "from";
+ public static final String PROPERTY_OBJECT = "object";
+ public static final String PROPERTY_MESSAGE = "message";
+
+ protected String to;
+ protected String from;
+ protected String object;
+ protected String message;
+ protected List<Attachment> attachments = new ArrayList<Attachment>();
+
+ public String getTo() {
+ return to;
+ }
+
+ public void setTo(String to) {
+ Object oldValue = getTo();
+ this.to = to;
+ firePropertyChange(PROPERTY_TO, oldValue, to);
+ }
+
+ public String getFrom() {
+ return from;
+ }
+
+ public void setFrom(String from) {
+ Object oldValue = getFrom();
+ this.from = from;
+ firePropertyChange(PROPERTY_FROM, oldValue, from);
+ }
+
+ public String getObject() {
+ return object;
+ }
+
+ public void setObject(String object) {
+ Object oldValue = getObject();
+ this.object = object;
+ firePropertyChange(PROPERTY_OBJECT, oldValue, object);
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ Object oldValue = getMessage();
+ this.message = message;
+ firePropertyChange(PROPERTY_MESSAGE, oldValue, message);
+ }
+
+ @Override
+ public Collection<Attachment> getAttachment() {
+ return attachments;
+ }
+
+ @Override
+ public void addAllAttachment(Collection<Attachment> attachments) {
+ this.attachments.addAll(attachments);
+ firePropertyChange(AttachmentModelAware.PROPERTY_ATTACHMENT, null, getAttachment());
+ }
+
+ @Override
+ public void addAttachment(Attachment attachment) {
+ attachments.add(attachment);
+ firePropertyChange(AttachmentModelAware.PROPERTY_ATTACHMENT, null, getAttachment());
+ }
+
+ @Override
+ public void removeAttachment(Attachment attachment) {
+ attachments.remove(attachment);
+ firePropertyChange(AttachmentModelAware.PROPERTY_ATTACHMENT, null, getAttachment());
+ }
+}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -30,13 +30,21 @@
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
import com.google.common.base.Preconditions;
import com.google.common.collect.Sets;
+import jaxx.runtime.JAXXUtil;
+import jaxx.runtime.SwingUtil;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.decorator.Decorator;
import org.nuiton.jaxx.application.swing.AbstractApplicationUIHandler;
+import org.nuiton.jaxx.application.swing.ApplicationUI;
import org.nuiton.jaxx.application.swing.action.ApplicationActionUI;
+import org.nuiton.jaxx.application.swing.util.*;
-import java.awt.Component;
+import javax.swing.*;
+import java.awt.*;
+import java.awt.event.ActionEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.util.ArrayList;
@@ -222,4 +230,51 @@
}
return labelList;
}
+
+ public void openFrame(ApplicationUI dialogContent,
+ String title, Dimension dim) {
+ Component topestUI = getTopestUI();
+
+ JFrame result = new JFrame(title);
+
+ result.add((Component) dialogContent);
+ result.setResizable(true);
+
+ result.setSize(dim);
+
+ final AbstractApplicationUIHandler handler = dialogContent.getHandler();
+
+ if (handler instanceof org.nuiton.jaxx.application.swing.util.Cancelable) {
+
+ // add a auto-close action
+ JRootPane rootPane = result.getRootPane();
+
+ KeyStroke shortcutClosePopup = getContext().getConfiguration().getShortcutClosePopup();
+
+ rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(
+ shortcutClosePopup, "close");
+ rootPane.getActionMap().put("close", new AbstractAction() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ ((org.nuiton.jaxx.application.swing.util.Cancelable) handler).cancel();
+ }
+ });
+ }
+
+ result.addWindowListener(new WindowAdapter() {
+
+ @Override
+ public void windowClosed(WindowEvent e) {
+ Component ui = (Component) e.getSource();
+ if (log.isDebugEnabled()) {
+ log.debug("Destroy ui " + ui);
+ }
+ JAXXUtil.destroy(ui);
+ }
+ });
+ SwingUtil.center(getContext().getMainUI(), result);
+ result.setVisible(true);
+ }
}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupButton.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupButton.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupButton.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,98 @@
+package com.franciaflex.faxtomail.ui.swing.util;
+
+import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
+import jaxx.runtime.SwingUtil;
+import org.jdesktop.beans.AbstractSerializableBean;
+
+import javax.swing.*;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+import java.awt.*;
+import java.awt.List;
+import java.awt.event.HierarchyBoundsAdapter;
+import java.awt.event.HierarchyEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.util.*;
+
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public abstract class AbstractToolbarPopupButton<UI extends AbstractToolbarPopupUI> extends JToggleButton {
+
+ private static final long serialVersionUID = 1L;
+
+ protected final UI popup;
+
+ protected boolean popupMoving;
+
+ public AbstractToolbarPopupButton() {
+
+ setIcon(SwingUtil.createActionIcon(getActionIcon()));
+
+ popup = createNewPopup();
+
+ popup.addWindowListener(new WindowAdapter() {
+
+ @Override
+ public void windowOpened(WindowEvent e) {
+ setSelected(true);
+ }
+
+ @Override
+ public void windowClosing(WindowEvent e) {
+ setSelected(false);
+ }
+
+ @Override
+ public void windowClosed(WindowEvent e) {
+ setSelected(false);
+ }
+ });
+
+ addChangeListener(new ChangeListener() {
+ @Override
+ public void stateChanged(ChangeEvent e) {
+ if (isSelected()) {
+ if (!popup.isVisible()) {
+ popup.openEditor(AbstractToolbarPopupButton.this);
+ }
+ } else {
+ popup.closeEditor();
+ }
+ }
+ });
+
+ addHierarchyBoundsListener(new HierarchyBoundsAdapter() {
+
+ @Override
+ public void ancestorMoved(HierarchyEvent e) {
+ if (popup.isShowing()) {
+
+ // place dialog just under the button
+ Point point = new Point(getLocationOnScreen());
+ point.translate(-popup.getWidth() + getWidth(), getHeight());
+ popupMoving = true;
+ try {
+ popup.setLocation(point);
+ } finally {
+ popupMoving = false;
+ }
+ }
+ }
+ });
+ }
+
+ protected abstract String getActionIcon();
+
+ protected abstract UI createNewPopup();
+
+ public void onCloseUI() {
+ setSelected(false);
+ }
+}
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupHandler.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,124 @@
+package com.franciaflex.faxtomail.ui.swing.util;
+
+import jaxx.runtime.SwingUtil;
+import jaxx.runtime.swing.ComponentMover;
+import jaxx.runtime.swing.ComponentResizer;
+
+import javax.swing.*;
+import java.awt.*;
+import java.awt.event.ActionEvent;
+import java.awt.event.KeyEvent;
+
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public abstract class AbstractToolbarPopupHandler<M, UI extends AbstractToolbarPopupUI<M, ?>> extends AbstractFaxToMailUIHandler<M,UI> {
+
+ public static final String CLOSE_DIALOG_ACTION = "closeDialog";
+
+ public static final String SHOW_DIALOG_ACTION = "showDialog";
+
+ @Override
+ public void afterInit(UI ui) {
+
+ ui.pack();
+ ui.setResizable(true);
+
+ ComponentResizer cr = new ComponentResizer();
+ cr.registerComponent(ui);
+ ComponentMover cm = new ComponentMover();
+ cm.setDragInsets(cr.getDragInsets());
+ cm.registerComponent(ui);
+
+ JRootPane rootPane = ui.getRootPane();
+
+ KeyStroke shortcutClosePopup = KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0);
+
+ rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(
+ shortcutClosePopup, CLOSE_DIALOG_ACTION);
+
+ closeAction = new AbstractAction() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ AbstractToolbarPopupHandler.this.ui.dispose();
+ AbstractToolbarPopupHandler.this.ui.setVisible(false);
+ }
+ };
+
+ openAction = new AbstractAction() {
+
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ AbstractToolbarPopupHandler.this.ui.setVisible(true);
+ }
+ };
+
+ ImageIcon actionIcon = SwingUtil.createActionIcon("close-dialog");
+ closeAction.putValue(Action.SMALL_ICON, actionIcon);
+ closeAction.putValue(Action.LARGE_ICON_KEY, actionIcon);
+ closeAction.putValue(Action.ACTION_COMMAND_KEY, "close");
+ closeAction.putValue(Action.NAME, "close");
+ closeAction.putValue(Action.SHORT_DESCRIPTION, t("faxtomail.attachmentEditor.action.closeAttachment.tip"));
+
+ rootPane.getActionMap().put(CLOSE_DIALOG_ACTION, closeAction);
+ rootPane.getActionMap().put(SHOW_DIALOG_ACTION, openAction);
+
+ JButton closeButton = new JButton(closeAction);
+ closeButton.setText(null);
+ closeButton.setFocusPainted(false);
+ closeButton.setRequestFocusEnabled(false);
+ closeButton.setFocusable(false);
+
+ JToolBar jToolBar = new JToolBar();
+ jToolBar.setOpaque(false);
+ jToolBar.add(closeAction);
+ jToolBar.setBorderPainted(false);
+ jToolBar.setFloatable(false);
+ ui.getBody().setRightDecoration(jToolBar);
+ }
+
+ protected Action closeAction;
+
+ protected Action openAction;
+
+ public void closeEditor() {
+
+ closeAction.actionPerformed(null);
+ }
+
+ public void openEditor(JComponent component) {
+
+ if (component != null) {
+ place(component);
+ }
+ openAction.actionPerformed(null);
+ }
+
+ public void place(JComponent component) {
+ // Computes the location of bottom left corner of the cell
+ Component comp = component;
+ int x = 0;
+ int y = component.getHeight();
+ while (comp != null) {
+ x += comp.getX();
+ y += comp.getY();
+ comp = comp.getParent();
+ }
+
+ ui.pack();
+ // if the editor is too big on the right,
+ // then align its right side to the right side of the cell
+ if (x + ui.getWidth() > ui.getOwner().getX() + ui.getOwner().getWidth()) {
+ x = x - ui.getWidth() + component.getWidth();
+ }
+ ui.setLocation(x, y);
+ }
+
+}
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.css (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,4 @@
+#dialog {
+ undecorated: true;
+ alwaysOnTop: true;
+}
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.jaxx (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractToolbarPopupUI.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,33 @@
+<JDialog layout='{new BorderLayout()}'
+ id='dialog'
+ abstract='true'
+ genericType="M, H extends AbstractToolbarPopupHandler<M, ?>"
+ implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<M, H>'>
+
+ <import>
+ com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext
+ com.franciaflex.faxtomail.ui.swing.util.FaxToMailUIUtil
+
+ org.jdesktop.swingx.JXTitledPanel
+ javax.swing.JComponent
+ </import>
+
+ <script><![CDATA[
+
+public AbstractToolbarPopupUI(FaxToMailUIContext context) {
+ super(context.getMainUI());
+ FaxToMailUIUtil.setApplicationContext(this, context);
+}
+
+public void openEditor(JComponent component) {
+ getHandler().openEditor(component);
+}
+
+public void closeEditor() {
+ getHandler().closeEditor();
+}
+ ]]></script>
+
+ <JXTitledPanel id='body' constraints='BorderLayout.CENTER'>
+ </JXTitledPanel>
+</JDialog>
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellEditor.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellEditor.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellEditor.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,142 @@
+package com.franciaflex.faxtomail.ui.swing.util.attachment;
+
+/*
+ * #%L
+ * Tutti :: UI
+ * $Id: AttachmentCellEditor.java 1564 2014-01-31 10:56:26Z tchemit $
+ * $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/java… $
+ * %%
+ * Copyright (C) 2012 - 2013 Ifremer
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
+import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailBeanUIModel;
+import com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI;
+import com.google.common.base.Preconditions;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.jaxx.application.swing.table.AbstractApplicationTableModel;
+
+import javax.swing.*;
+import javax.swing.border.LineBorder;
+import javax.swing.event.CellEditorListener;
+import javax.swing.event.ChangeEvent;
+import javax.swing.table.TableCellEditor;
+import java.awt.*;
+import java.util.EventObject;
+
+/**
+ * To edit attachments from a table cell.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @author kmorin <morin(a)codelutin.com>
+ * @since 1.0.2
+ */
+public class AttachmentCellEditor extends AbstractCellEditor implements TableCellEditor {
+
+ private static final long serialVersionUID = 1L;
+
+ /** Logger. */
+ private static final Log log = LogFactory.getLog(AttachmentCellEditor.class);
+
+ public static TableCellEditor newEditor(FaxToMailUI ui) {
+
+ return new AttachmentCellEditor(FaxToMailUIContext.getApplicationContext());
+ }
+
+ protected JTable table;
+
+ protected AbstractApplicationTableModel<AbstractFaxToMailBeanUIModel> tableModel;
+
+ protected Integer rowIndex;
+
+ protected Integer columnIndex;
+
+ protected final ButtonAttachment editorButton;
+
+ public AttachmentCellEditor(FaxToMailUIContext context) {
+
+ this.editorButton = new ButtonAttachment(null);
+ this.editorButton.setBorder(new LineBorder(Color.BLACK));
+ addCellEditorListener(new CellEditorListener() {
+ @Override
+ public void editingStopped(ChangeEvent e) {
+ editorButton.setSelected(false);
+ }
+
+ @Override
+ public void editingCanceled(ChangeEvent e) {
+ editorButton.setSelected(false);
+ }
+ });
+ }
+
+ @Override
+ public Component getTableCellEditorComponent(JTable table,
+ Object value,
+ boolean isSelected,
+ int row,
+ int column) {
+ this.table = table;
+ this.tableModel = (AbstractApplicationTableModel<AbstractFaxToMailBeanUIModel>) table.getModel();
+
+ rowIndex = row;
+ columnIndex = column;
+
+ AttachmentModelAware model =
+ (AttachmentModelAware) tableModel.getEntry(row);
+
+ editorButton.init(model);
+
+ return editorButton;
+ }
+
+ @Override
+ public boolean shouldSelectCell(EventObject anEvent) {
+ return false;
+ }
+
+ @Override
+ public Object getCellEditorValue() {
+
+ AttachmentModelAware model = editorButton.getBean();
+ Preconditions.checkNotNull(model, "No model found in editor.");
+
+ Object result = model.getAttachment();
+ if (log.isDebugEnabled()) {
+ log.debug("editor value: " + result);
+ }
+
+ return result;
+ }
+
+ @Override
+ public boolean stopCellEditing() {
+ boolean b = super.stopCellEditing();
+ if (b) {
+ editorButton.setBean(null);
+ }
+ return b;
+ }
+
+ @Override
+ public void cancelCellEditing() {
+ editorButton.setBean(null);
+ super.cancelCellEditing();
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellRenderer.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellRenderer.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentCellRenderer.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,102 @@
+package com.franciaflex.faxtomail.ui.swing.util.attachment;
+
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+import jaxx.runtime.SwingUtil;
+import org.apache.commons.collections.CollectionUtils;
+import org.nuiton.decorator.Decorator;
+
+import javax.swing.*;
+import javax.swing.table.DefaultTableCellRenderer;
+import java.awt.*;
+import java.util.List;
+
+import static org.nuiton.i18n.I18n.n;
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * Renderer of a attachement editor in a table cell.
+ *
+ * @author kmorin <morin(a)codelutin.com>
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 1.0.2
+ */
+public class AttachmentCellRenderer extends DefaultTableCellRenderer {
+
+ public static final String TEXT_PATTERN = "<html><body>%s</body></html>";
+
+ private static final long serialVersionUID = 1L;
+
+ private final String noneText;
+
+ private final Decorator<Attachment> decorator;
+
+ private Font defaulfFont;
+
+ private Font selectedFont;
+
+ public static AttachmentCellRenderer newRender(Decorator<Attachment> decorator) {
+ return new AttachmentCellRenderer(decorator);
+ }
+
+ protected AttachmentCellRenderer(Decorator<Attachment> decorator) {
+ setHorizontalAlignment(CENTER);
+ setIcon(SwingUtil.createActionIcon("edit-attachment"));
+ this.noneText = n("faxtomail.attachmentEditor.none.tip");
+ this.decorator = decorator;
+ }
+
+ @Override
+ protected void setValue(Object value) {
+ // do nothing
+ }
+
+ @Override
+ public JComponent getTableCellRendererComponent(JTable table,
+ Object value,
+ boolean isSelected,
+ boolean hasFocus,
+ int row,
+ int column) {
+
+ if (defaulfFont == null) {
+ defaulfFont = UIManager.getFont("Table.font");
+ selectedFont = defaulfFont.deriveFont(Font.BOLD);
+ }
+
+ List<Attachment> attachments = (List<Attachment>) value;
+
+ String toolTipTextValue;
+
+ if (CollectionUtils.isEmpty(attachments)) {
+
+ // use HTML to show the tooltip in italic
+ toolTipTextValue = "<i>" + t(noneText) + "</i>";
+
+
+ } else {
+
+ StringBuilder sb = new StringBuilder();
+ for (Attachment attachment : attachments) {
+ sb.append("<br/>").append(decorator.toString(attachment));
+ }
+ // use html to display the tooltip on several lines
+ toolTipTextValue = sb.substring(5);
+ }
+ String textValue = ButtonAttachment.getButtonText(attachments);
+ boolean editable = table.isCellEditable(row, column);
+ toolTipTextValue = String.format(TEXT_PATTERN, toolTipTextValue);
+ setEnabled(editable);
+ setText(textValue);
+ setToolTipText(toolTipTextValue);
+ setBackground(null);
+ setForeground(Color.BLACK);
+
+ if (isSelected) {
+ setFont(selectedFont);
+ } else {
+ setFont(defaulfFont);
+ }
+
+ return this;
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.css (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,25 @@
+#body {
+ title: "faxtomail.attachmentEditor.title";
+}
+
+#fileLabel {
+ text: "faxtomail.attachmentEditor.field.file";
+ labelFor: {file};
+}
+
+#fileNameLabel {
+ text: "faxtomail.attachmentEditor.field.fileName";
+ labelFor: {fileName};
+}
+
+#fileCommentLabel {
+ text: "faxtomail.attachmentEditor.field.fileComment";
+ labelFor: {fileComment};
+}
+
+#addButton {
+ actionIcon: add;
+ toolTipText: "faxtomail.attachmentEditor.action.add.tip";
+ i18nMnemonic: "faxtomail.attachmentEditor.action.add.mnemonic";
+}
+
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.jaxx (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUI.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,70 @@
+<com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupUI
+ superGenericType="FaxToMailUIContext, AttachmentEditorUIHandler"
+ id='attachmentDialog'>
+
+ <import>
+ com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext
+
+ jaxx.runtime.swing.editor.FileEditor
+ org.jdesktop.swingx.JXTitledPanel
+ javax.swing.JComponent
+ </import>
+
+ <!-- if true, display the form to add attachments
+ and the button to remove existing attachments -->
+ <Boolean id='editable' javaBean='true'/>
+
+ <!-- bean property -->
+ <AttachmentModelAware id='bean' javaBean='null'/>
+
+ <FaxToMailUIContext id='model'
+ initializer='getContextValue(FaxToMailUIContext.class)'/>
+
+ <JXTitledPanel id='body'>
+ <JScrollPane id='attachmentBodyScrollPane'>
+ <Table id='mainPanel'>
+
+ <row fill='both' weighty='1'>
+ <cell fill='both' weightx='1' columns='3'>
+ <JPanel id='attachments' layout='{new GridLayout(0, 1)}'></JPanel>
+ </cell>
+ </row>
+ <row fill='both'>
+ <cell fill='both' weightx='1' columns='3'>
+ <JSeparator/>
+ </cell>
+ </row>
+ <row fill='both'>
+ <cell fill='both' weightx='1'>
+ <JLabel id='fileLabel'/>
+ </cell>
+ <cell fill='both' weightx='1'>
+ <FileEditor id='file'/>
+ </cell>
+ <cell fill='both' rows='3'>
+ <JButton id='addButton'
+ onActionPerformed='handler.addAttachment()'/>
+ </cell>
+ </row>
+ <!--<row fill='both'>-->
+ <!--<cell fill='both' weightx='1'>-->
+ <!--<JLabel id='fileNameLabel'/>-->
+ <!--</cell>-->
+ <!--<cell fill='both' weightx='1'>-->
+ <!--<JTextField id='fileName'/>-->
+ <!--</cell>-->
+ <!--</row>-->
+ <!--<row fill='both' weighty='1'>-->
+ <!--<cell fill='both' weightx='1'>-->
+ <!--<JLabel id='fileCommentLabel'/>-->
+ <!--</cell>-->
+ <!--<cell fill='both' weightx='1'>-->
+ <!--<JScrollPane>-->
+ <!--<JTextArea id='fileComment' rows='3'/>-->
+ <!--</JScrollPane>-->
+ <!--</cell>-->
+ <!--</row>-->
+ </Table>
+ </JScrollPane>
+ </JXTitledPanel>
+</com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupUI>
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUIHandler.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentEditorUIHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,190 @@
+package com.franciaflex.faxtomail.ui.swing.util.attachment;
+
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+import com.franciaflex.faxtomail.persistence.entities.AttachmentImpl;
+import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailUIHandler;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupHandler;
+import com.franciaflex.faxtomail.ui.swing.util.FaxToMailUIUtil;
+import jaxx.runtime.SwingUtil;
+import jaxx.runtime.swing.ComponentMover;
+import jaxx.runtime.swing.ComponentResizer;
+import jaxx.runtime.validator.swing.SwingValidator;
+import org.apache.commons.lang3.StringUtils;
+import org.nuiton.jaxx.application.ApplicationTechnicalException;
+
+import javax.swing.*;
+import java.awt.*;
+import java.awt.event.ActionEvent;
+import java.awt.event.KeyEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.io.File;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.List;
+
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * @author kmorin <morin(a)codelutin.com>
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public class AttachmentEditorUIHandler extends AbstractToolbarPopupHandler<FaxToMailUIContext, AttachmentEditorUI> {
+
+ @Override
+ public void beforeInit(AttachmentEditorUI ui) {
+ super.beforeInit(ui);
+
+ getUI().addPropertyChangeListener(AttachmentEditorUI.PROPERTY_BEAN, new PropertyChangeListener() {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ init();
+ }
+ });
+ }
+
+ @Override
+ public void afterInit(AttachmentEditorUI ui) {
+ ui.getFile().setDialogOwner(ui);
+ super.afterInit(ui);
+ }
+
+ @Override
+ protected JComponent getComponentToFocus() {
+ return getUI().getFile();
+ }
+
+ @Override
+ public void onCloseUI() {
+ }
+
+ @Override
+ public SwingValidator<FaxToMailUIContext> getValidator() {
+ return null;
+ }
+
+ public void init() {
+ resetFields();
+ ui.getAttachments().removeAll();
+ AttachmentModelAware bean = ui.getBean();
+ if (bean != null) {
+ Collection<Attachment> attachments = bean.getAttachment();
+ if (attachments != null) {
+ for (Attachment attachment : attachments) {
+ addAttachment(attachment);
+ }
+ }
+ }
+ }
+
+ public void place(JComponent component) {
+ // Computes the location of bottom left corner of the cell
+ Component comp = component;
+ int x = 0;
+ int y = component.getHeight();
+ while (comp != null) {
+ x += comp.getX();
+ y += comp.getY();
+ comp = comp.getParent();
+ }
+
+ ui.pack();
+ // if the editor is too big on the right,
+ // then align its right side to the right side of the cell
+ if (x + ui.getWidth() > ui.getOwner().getX() + ui.getOwner().getWidth()) {
+ x = x - ui.getWidth() + component.getWidth();
+ }
+ ui.setLocation(x, y);
+ }
+
+ public void addAttachment() {
+ AttachmentModelAware bean = ui.getBean();
+ Attachment attachment = new AttachmentImpl();
+
+ File file = ui.getFile().getSelectedFile();
+ if (file != null) {
+// String name = ui.getFileName().getText();
+// if (StringUtils.isEmpty(name)) {
+ String name = file.getName();
+// }
+// attachment.setObjectType(bean.getObjectType());
+// attachment.setObjectId(bean.getObjectId());
+// attachment.setName(name);
+// attachment.setComment(ui.getFileComment().getText());
+ attachment.setFile(file);
+
+// attachment = getPersistenceService().createAttachment(attachment, file);
+ bean.addAttachment(attachment);
+
+ resetFields();
+ addAttachment(attachment);
+
+ ui.pack();
+ }
+ }
+
+ protected void addAttachment(final Attachment attachment) {
+ AttachmentItem item = new AttachmentItem();
+ item.setAttachment(attachment);
+ item.setHandler(this);
+ ui.getAttachments().add(item);
+ }
+
+ protected void resetFields() {
+ ui.getFile().setSelectedFilePath(null);
+// ui.getFileName().setText("");
+// ui.getFileComment().setText("");
+ }
+
+ public void openAttachment(Attachment attachment) {
+// File file = getPersistenceService().getAttachmentFile(attachment.getId());
+ File file = attachment.getFile();
+
+ if (!file.exists()) {
+ throw new ApplicationTechnicalException(t("faxtomail.attachmentEditor.fileNotFound", file.getAbsolutePath()));
+ }
+
+ Desktop desktop = FaxToMailUIUtil.getDesktopForBrowse();
+ try {
+ desktop.browse(file.toURI());
+
+ } catch (IOException e) {
+ getContext().getErrorHelper().showErrorDialog(t("swing.error.cannot.open.file"));
+ }
+ }
+
+ public void saveAttachment(Attachment attachment) {
+
+ SaveAttachmentAction action = getContext().getActionFactory().createLogicAction(
+ this, SaveAttachmentAction.class);
+ action.setAttachment(attachment);
+ getContext().getActionEngine().runAction(action);
+ }
+
+ public void removeAttachment(AttachmentItem attachmentItem) {
+ Attachment attachment = attachmentItem.getAttachment();
+ boolean hackDialog = ui.isAlwaysOnTop();
+ if (hackDialog) {
+ ui.setAlwaysOnTop(false);
+ }
+ int answer = JOptionPane.showConfirmDialog(ui,
+ t("faxtomail.attachmentEditor.deleteAttachment.message", attachment.getFile()),
+ t("faxtomail.attachmentEditor.deleteAttachment.title"),
+ JOptionPane.YES_NO_OPTION);
+ if (hackDialog) {
+ ui.setAlwaysOnTop(true);
+ }
+
+ if (answer == JOptionPane.YES_OPTION) {
+ AttachmentModelAware bean = ui.getBean();
+
+// getPersistenceService().deleteAttachment(attachment.getId());
+ bean.removeAttachment(attachment);
+ ui.getAttachments().remove(attachmentItem);
+
+ ui.pack();
+ }
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.css (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,26 @@
+#attachmentNameLabel {
+ text: {attachment != null ? getAttachment().getFile().getName() : null};
+}
+
+#toolbar {
+ borderPainted: false;
+ floatable: false;
+}
+
+#openAttachmentButton {
+ actionIcon: "open-file";
+ toolTipText: "faxtomail.attachmentEditor.action.open.tip";
+ i18nMnemonic: "faxtomail.attachmentEditor.action.open.mnemonic";
+}
+
+#saveAttachmentButton {
+ actionIcon: "import";
+ toolTipText: "faxtomail.attachmentEditor.action.save.tip";
+ i18nMnemonic: "faxtomail.attachmentEditor.action.save.mnemonic";
+}
+
+#removeAttachmentButton {
+ actionIcon: "delete";
+ toolTipText: "faxtomail.attachmentEditor.action.remove.tip";
+ i18nMnemonic: "faxtomail.attachmentEditor.action.remove.mnemonic";
+}
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.jaxx (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentItem.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,24 @@
+<JPanel id='attachmentPanel' layout='{new BorderLayout()}'>
+
+ <import>
+ com.franciaflex.faxtomail.persistence.entities.Attachment
+ static org.nuiton.i18n.I18n.t
+ static jaxx.runtime.JAXXUtil.getStringValue
+ </import>
+
+ <Attachment id='attachment' javaBean='null'/>
+
+ <AttachmentEditorUIHandler id='handler' javaBean='null'/>
+
+ <JLabel id='attachmentNameLabel' constraints='BorderLayout.CENTER'/>
+
+ <JToolBar id='toolbar' constraints='BorderLayout.EAST'>
+ <JButton id='openAttachmentButton'
+ onActionPerformed='handler.openAttachment(attachment)'/>
+ <JButton id='saveAttachmentButton'
+ onActionPerformed='handler.saveAttachment(attachment)'/>
+ <JButton id='removeAttachmentButton'
+ onActionPerformed='handler.removeAttachment(this)'/>
+ </JToolBar>
+
+</JPanel>
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentModelAware.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentModelAware.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/AttachmentModelAware.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,33 @@
+package com.franciaflex.faxtomail.ui.swing.util.attachment;
+
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * To place on model wich supports attachments.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 1.0.2
+ */
+public interface AttachmentModelAware extends Serializable {
+
+ String PROPERTY_ATTACHMENT = "attachment";
+
+ String PROPERTY_OBJECT_ID = "objectId";
+
+// AttachementObjectTypeEnum getObjectType();
+
+// Integer getObjectId();
+
+ Collection<Attachment> getAttachment();
+
+ void addAllAttachment(Collection<Attachment> attachments);
+
+ void addAttachment(Attachment attachment);
+
+ void removeAttachment(Attachment attachment);
+
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/ButtonAttachment.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/ButtonAttachment.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/ButtonAttachment.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,98 @@
+package com.franciaflex.faxtomail.ui.swing.util.attachment;
+
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupButton;
+import jaxx.runtime.SwingUtil;
+import org.apache.commons.collections4.CollectionUtils;
+import org.jdesktop.beans.AbstractSerializableBean;
+
+import javax.swing.*;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+import java.awt.*;
+import java.awt.event.HierarchyBoundsAdapter;
+import java.awt.event.HierarchyEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.util.Collection;
+import java.util.List;
+
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * Button to edit attachments.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 1.1
+ */
+public class ButtonAttachment extends AbstractToolbarPopupButton<AttachmentEditorUI> {
+
+ private transient PropertyChangeListener listenAttachmentsChanged;
+
+ public ButtonAttachment(AttachmentModelAware model) {
+ setToolTipText(t("faxtomail.attachmentEditor.action.tip"));
+ setBean(model);
+ }
+
+ @Override
+ protected String getActionIcon() {
+ return "edit-attachment";
+ }
+
+ @Override
+ protected AttachmentEditorUI createNewPopup() {
+ return new AttachmentEditorUI(FaxToMailUIContext.getApplicationContext());
+ }
+
+ public static String getButtonText(Collection<Attachment> attachments) {
+ int attachmentNb = CollectionUtils.size(attachments);
+ return t("faxtomail.attachmentEditor.text", attachmentNb);
+ }
+
+ public void init() {
+ popup.getHandler().init();
+ }
+
+ public void init(AttachmentModelAware model) {
+ setBean(model);
+ init();
+ }
+
+ public AttachmentModelAware getBean() {
+ return popup.getBean();
+ }
+
+ protected void setBean(AttachmentModelAware model) {
+ AttachmentModelAware bean = popup.getBean();
+ if (bean != null) {
+ ((AbstractSerializableBean) bean).removePropertyChangeListener(AttachmentModelAware.PROPERTY_ATTACHMENT, getListenAttachmentsChanged());
+ }
+ popup.setBean(model);
+
+ if (model != null) {
+
+ ((AbstractSerializableBean) model).addPropertyChangeListener(AttachmentModelAware.PROPERTY_ATTACHMENT, getListenAttachmentsChanged());
+ Collection<Attachment> attachments = model.getAttachment();
+ setText(ButtonAttachment.getButtonText(attachments));
+ }
+ }
+
+ protected PropertyChangeListener getListenAttachmentsChanged() {
+ if (listenAttachmentsChanged == null) {
+ listenAttachmentsChanged = new PropertyChangeListener() {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ List<Attachment> attachment = (List<Attachment>) evt.getNewValue();
+ setText(getButtonText(attachment));
+ if (!popup.isVisible()) {
+ init();
+ }
+ }
+ };
+ }
+ return listenAttachmentsChanged;
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/SaveAttachmentAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/SaveAttachmentAction.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/attachment/SaveAttachmentAction.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,81 @@
+package com.franciaflex.faxtomail.ui.swing.util.attachment;
+
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
+import com.franciaflex.faxtomail.ui.swing.actions.AbstractFaxToMailAction;
+import org.nuiton.jaxx.application.ApplicationIOUtil;
+
+import java.io.File;
+
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * To persist a attachment.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.4
+ */
+public class SaveAttachmentAction extends AbstractFaxToMailAction<FaxToMailUIContext, AttachmentEditorUI, AttachmentEditorUIHandler> {
+
+ private Attachment attachment;
+
+ public SaveAttachmentAction(AttachmentEditorUIHandler handler) {
+ super(handler, false);
+ }
+
+ protected File file;
+
+ protected File attachmentFile;
+
+ @Override
+ public boolean prepareAction() throws Exception {
+ boolean doAction = super.prepareAction();
+ if (doAction) {
+
+ attachmentFile = attachment.getFile();
+
+ file = saveFile(
+ ApplicationIOUtil.getBaseName(attachmentFile.getName()),
+ ApplicationIOUtil.getExtension(attachmentFile.getName()),
+ t("faxtomail.attachmentEditor.saveAttachment.title"),
+ t("faxtomail.attachmentEditor.saveAttachment.button"));
+ doAction = file != null;
+ }
+ return doAction;
+ }
+
+ @Override
+ public void doAction() throws Exception {
+
+ AttachmentEditorUI ui = getUI();
+
+ boolean hackDialog = ui.isAlwaysOnTop();
+ if (hackDialog) {
+ ui.setAlwaysOnTop(false);
+ }
+ try {
+
+ ApplicationIOUtil.copyFile(attachmentFile, file,
+ t("faxtomail.attachmentEditor.saveAttachment.error.message", attachmentFile, file.getName()));
+ sendMessage(
+ t("faxtomail.attachmentEditor.saveAttachment.success.message", file.getName()));
+
+ } finally {
+ if (hackDialog) {
+ ui.setAlwaysOnTop(true);
+ }
+ }
+ }
+
+ public void setAttachment(Attachment attachment) {
+ this.attachment = attachment;
+ }
+
+ @Override
+ public void releaseAction() {
+ super.releaseAction();
+ attachmentFile = null;
+ attachment = null;
+ file = null;
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/ButtonHistory.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/ButtonHistory.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/ButtonHistory.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,49 @@
+package com.franciaflex.faxtomail.ui.swing.util.history;
+
+import com.franciaflex.faxtomail.persistence.entities.Attachment;
+import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupButton;
+import com.franciaflex.faxtomail.ui.swing.util.attachment.AttachmentEditorUI;
+import com.franciaflex.faxtomail.ui.swing.util.attachment.AttachmentModelAware;
+import jaxx.runtime.SwingUtil;
+import org.jdesktop.beans.AbstractSerializableBean;
+
+import javax.swing.*;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+import java.awt.*;
+import java.awt.event.HierarchyBoundsAdapter;
+import java.awt.event.HierarchyEvent;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.util.List;
+
+import static org.nuiton.i18n.I18n.t;
+
+/**
+ * Button to edit attachments.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 1.1
+ */
+public class ButtonHistory extends AbstractToolbarPopupButton<HistoryListUI> {
+
+ public ButtonHistory() {
+ setToolTipText(t("faxtomail.historyList.action.tip"));
+ int historySize = popup.getModel().sizeHistory();
+ setText(t("faxtomail.historyList.text", historySize));
+ }
+
+ @Override
+ protected String getActionIcon() {
+ return "view-history";
+ }
+
+ @Override
+ protected HistoryListUI createNewPopup() {
+ return new HistoryListUI(FaxToMailUIContext.getApplicationContext());
+ }
+
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.css (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,11 @@
+#type {
+ text : { model.getTypeAsString() };
+}
+
+#user {
+ text : { model.getFaxToMailUserAsString() };
+}
+
+#date {
+ text : { model.getModificationDateAsString() };
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.jaxx (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItem.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,28 @@
+<JPanel id='historyItemPanel' layout="{new GridLayout(0,1)}">
+
+ <import>
+ com.franciaflex.faxtomail.persistence.entities.History
+
+ static org.nuiton.i18n.I18n.t
+ static jaxx.runtime.JAXXUtil.getStringValue
+ </import>
+
+ <HistoryItemModel id='model' initializer="new HistoryItemModel(getContextValue(History.class))" />
+
+ <HistoryListUIHandler id="handler" initializer="getContextValue(HistoryListUIHandler.class)" />
+
+ <script><![CDATA[
+public HistoryItem(History history, HistoryListUIHandler handler) {
+ setContextValue(history);
+ setContextValue(handler);
+}
+ ]]></script>
+
+ <JLabel id='type'/>
+
+ <JPanel>
+ <JLabel id='user'/>
+ <JLabel id='date'/>
+ </JPanel>
+
+</JPanel>
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItemModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItemModel.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryItemModel.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,93 @@
+package com.franciaflex.faxtomail.ui.swing.util.history;
+
+import com.franciaflex.faxtomail.persistence.entities.Email;
+import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
+import com.franciaflex.faxtomail.persistence.entities.History;
+import com.franciaflex.faxtomail.persistence.entities.HistoryImpl;
+import com.franciaflex.faxtomail.persistence.entities.HistoryType;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailBeanUIModel;
+import org.nuiton.util.beans.Binder;
+import org.nuiton.util.beans.BinderFactory;
+
+import java.text.DateFormat;
+import java.util.Date;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class HistoryItemModel extends AbstractFaxToMailBeanUIModel<History, HistoryItemModel> {
+
+ protected static Binder<HistoryItemModel, History> toBeanBinder =
+ BinderFactory.newBinder(HistoryItemModel.class,
+ History.class);
+
+ protected static Binder<History, HistoryItemModel> fromBeanBinder =
+ BinderFactory.newBinder(History.class, HistoryItemModel.class);
+
+ protected final History editObject = new HistoryImpl();
+
+ public HistoryItemModel(History history) {
+ super(fromBeanBinder, toBeanBinder);
+ fromEntity(history);
+ }
+
+ public String getTypeAsString() {
+ HistoryType type = editObject.getType();
+ if (type == null) {
+ return null;
+ }
+ return type.toString();
+ }
+
+ public HistoryType getType() {
+ return editObject.getType();
+ }
+
+ public void setType(HistoryType type) {
+ Object oldValue = editObject.getType();
+ editObject.setType(type);
+ firePropertyChanged(History.PROPERTY_TYPE + "AsString", oldValue, type);
+ }
+
+ public String getModificationDateAsString() {
+ Date date = editObject.getModificationDate();
+ if (date == null) {
+ return null;
+ }
+ return DateFormat.getDateTimeInstance().format(date);
+ }
+
+ public Date getModificationDate() {
+ return editObject.getModificationDate();
+ }
+
+ public void setModificationDate(Date modificationDate) {
+ Object oldValue = editObject.getModificationDate();
+ editObject.setModificationDate(modificationDate);
+ firePropertyChanged(History.PROPERTY_MODIFICATION_DATE + "AsString", oldValue, modificationDate);
+ }
+
+ public String getFaxToMailUserAsString() {
+ FaxToMailUser user = editObject.getFaxToMailUser();
+ if (user == null) {
+ return "faxtomail.systemUser";
+ }
+ return user.toString();
+ }
+
+ public FaxToMailUser getFaxToMailUser() {
+ return editObject.getFaxToMailUser();
+ }
+
+ public void setFaxToMailUser(FaxToMailUser faxToMailUser) {
+ Object oldValue = editObject.getFaxToMailUser();
+ editObject.setFaxToMailUser(faxToMailUser);
+ firePropertyChanged(History.PROPERTY_FAX_TO_MAIL_USER + "AsString", oldValue, faxToMailUser);
+ }
+
+ @Override
+ protected History newEntity() {
+ return new HistoryImpl();
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.css (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.css 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,3 @@
+#body {
+ title: "faxtomail.historyList.title";
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.jaxx (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUI.jaxx 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,18 @@
+<com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupUI
+ superGenericType="HistoryListUIModel, HistoryListUIHandler"
+ id='historyListDialog'>
+
+ <import>
+ org.jdesktop.swingx.JXTitledPanel
+ </import>
+
+ <HistoryListUIModel id='model'
+ initializer='getContextValue(HistoryListUIModel.class)'/>
+
+ <JXTitledPanel id='body'>
+ <JScrollPane id='attachmentBodyScrollPane'>
+ <JPanel id='histories' layout='{new GridLayout(0, 1)}'></JPanel>
+ </JScrollPane>
+ </JXTitledPanel>
+
+</com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupUI>
\ No newline at end of file
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIHandler.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIHandler.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,57 @@
+package com.franciaflex.faxtomail.ui.swing.util.history;
+
+import com.franciaflex.faxtomail.persistence.entities.Email;
+import com.franciaflex.faxtomail.persistence.entities.History;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailUIHandler;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractToolbarPopupHandler;
+import jaxx.runtime.JAXXUtil;
+import jaxx.runtime.validator.swing.SwingValidator;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import javax.swing.*;
+import java.awt.*;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class HistoryListUIHandler extends AbstractToolbarPopupHandler<HistoryListUIModel, HistoryListUI> {
+
+ private final static Log log = LogFactory.getLog(HistoryListUIHandler.class);
+
+ @Override
+ public void beforeInit(HistoryListUI ui) {
+ super.beforeInit(ui);
+
+ Email currentEmail = getContext().getCurrentEmail();
+ HistoryListUIModel model = new HistoryListUIModel();
+ model.fromBean(currentEmail);
+
+ this.ui.setContextValue(model);
+ }
+
+ @Override
+ public void afterInit(HistoryListUI ui) {
+ super.afterInit(ui);
+
+ for (History history : getModel().getHistory()) {
+ HistoryItem item = new HistoryItem(history, this);
+ ui.getHistories().add(item);
+ }
+ }
+
+ @Override
+ public void onCloseUI() {
+ }
+
+ @Override
+ public SwingValidator<HistoryListUIModel> getValidator() {
+ return null;
+ }
+
+ @Override
+ protected JComponent getComponentToFocus() {
+ return null;
+ }
+}
Added: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIModel.java (rev 0)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/history/HistoryListUIModel.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -0,0 +1,55 @@
+package com.franciaflex.faxtomail.ui.swing.util.history;
+
+import com.franciaflex.faxtomail.persistence.entities.Email;
+import com.franciaflex.faxtomail.persistence.entities.EmailImpl;
+import com.franciaflex.faxtomail.persistence.entities.History;
+import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailBeanUIModel;
+import org.nuiton.util.beans.Binder;
+import org.nuiton.util.beans.BinderFactory;
+
+import java.util.Collection;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public class HistoryListUIModel extends AbstractFaxToMailBeanUIModel<Email, HistoryListUIModel> {
+
+ protected static Binder<HistoryListUIModel, Email> toBeanBinder =
+ BinderFactory.newBinder(HistoryListUIModel.class,
+ Email.class);
+
+ protected static Binder<Email, HistoryListUIModel> fromBeanBinder =
+ BinderFactory.newBinder(Email.class, HistoryListUIModel.class);
+
+ protected final Email editObject = new EmailImpl();
+
+ public HistoryListUIModel() {
+ super(fromBeanBinder, toBeanBinder);
+ }
+
+ public void setHistory(Collection<History> history) {
+ editObject.setHistory(history);
+ }
+
+ public Collection<History> getHistory() {
+ return editObject.getHistory();
+ }
+
+ public int sizeHistory() {
+ return editObject.sizeHistory();
+ }
+
+ public boolean isHistoryEmpty() {
+ return editObject.isHistoryEmpty();
+ }
+
+ public boolean isHistoryNotEmpty() {
+ return editObject.isHistoryNotEmpty();
+ }
+
+ @Override
+ protected Email newEntity() {
+ return new EmailImpl();
+ }
+}
Modified: trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties 2014-02-25 09:19:54 UTC (rev 12)
@@ -16,7 +16,35 @@
faxtomail.alert.alreadyTakenBy.message=
faxtomail.alert.alreadyTakenBy.title=
faxtomail.archive.button.label=
+faxtomail.attachmentEditor.action.add.mnemonic=
+faxtomail.attachmentEditor.action.add.tip=
+faxtomail.attachmentEditor.action.closeAttachment.tip=
+faxtomail.attachmentEditor.action.open.mnemonic=
+faxtomail.attachmentEditor.action.open.tip=
+faxtomail.attachmentEditor.action.remove.mnemonic=
+faxtomail.attachmentEditor.action.remove.tip=
+faxtomail.attachmentEditor.action.save.mnemonic=
+faxtomail.attachmentEditor.action.save.tip=
+faxtomail.attachmentEditor.action.tip=
+faxtomail.attachmentEditor.deleteAttachment.message=
+faxtomail.attachmentEditor.deleteAttachment.title=
+faxtomail.attachmentEditor.field.file=
+faxtomail.attachmentEditor.fileNotFound=
+faxtomail.attachmentEditor.none.tip=
+faxtomail.attachmentEditor.saveAttachment.button=
+faxtomail.attachmentEditor.saveAttachment.error.message=
+faxtomail.attachmentEditor.saveAttachment.success.message=
+faxtomail.attachmentEditor.saveAttachment.title=
+faxtomail.attachmentEditor.text=
+faxtomail.attachmentEditor.title=
faxtomail.back.button.label=
+faxtomail.chooseMailFolder.action.cancel=
+faxtomail.chooseMailFolder.action.cancel.mnemonic=
+faxtomail.chooseMailFolder.action.cancel.tip=
+faxtomail.chooseMailFolder.action.validate=
+faxtomail.chooseMailFolder.action.validate.mnemonic=
+faxtomail.chooseMailFolder.action.validate.tip=
+faxtomail.chooseMailFolder.title=
faxtomail.common.askBeforeDelete.help=
faxtomail.common.askCancelEditBeforeLeaving.help=
faxtomail.common.askCancelEditBeforeLeaving.title=
@@ -66,7 +94,9 @@
faxtomail.demand.alreadyTakenBy=
faxtomail.demande.alreadyTakenBy=
faxtomail.demande.archive.button.label=
+faxtomail.demande.archive.button.mnemonic=
faxtomail.demande.back.button.label=
+faxtomail.demande.back.button.mnemonic=
faxtomail.demande.client.label=
faxtomail.demande.demandeNumber.label=
faxtomail.demande.docType.label=
@@ -81,19 +111,24 @@
faxtomail.demande.message.label=
faxtomail.demande.object.label=
faxtomail.demande.print.button.label=
+faxtomail.demande.print.button.mnemonic=
faxtomail.demande.priority.label=
faxtomail.demande.projectReference.label=
faxtomail.demande.received.label=
faxtomail.demande.receivedDate.label=
faxtomail.demande.ref.label=
+faxtomail.demande.reply.button.label=
+faxtomail.demande.reply.button.mnemonic=
faxtomail.demande.savNumber.label=
faxtomail.demande.save.button.label=
+faxtomail.demande.save.button.mnemonic=
faxtomail.demande.sender.label=
faxtomail.demande.status.label=
faxtomail.demande.takenBy.label=
faxtomail.demande.tcc.label=
faxtomail.demande.title=
faxtomail.demande.transmit.button.label=
+faxtomail.demande.transmit.button.mnemonic=
faxtomail.demandeList.action.attachment=
faxtomail.demandeList.action.attachment.mnemonic=
faxtomail.demandeList.action.attachment.tip=
@@ -125,6 +160,9 @@
faxtomail.error.ui.business.error=
faxtomail.error.ui.business.warning=
faxtomail.error.ui.other.error=
+faxtomail.historyList.action.tip=
+faxtomail.historyList.text=
+faxtomail.historyList.title=
faxtomail.i18n.deleteCache.error=
faxtomail.i18n.mkDir.error=
faxtomail.main.action.configuration=
@@ -152,6 +190,21 @@
faxtomail.print.button.label=
faxtomail.property.get.error=
faxtomail.property.set.error=
+faxtomail.rangeRows.table.header.command_number=
+faxtomail.rangeRows.table.header.product_column=
+faxtomail.rangeRows.table.header.range=
+faxtomail.rangeRows.table.header.sav_quantity=
+faxtomail.reply.action.cancel=
+faxtomail.reply.action.cancel.mnemonic=
+faxtomail.reply.action.cancel.tip=
+faxtomail.reply.action.validate=
+faxtomail.reply.action.validate.mnemonic=
+faxtomail.reply.action.validate.tip=
+faxtomail.reply.attachment=
+faxtomail.reply.from=
+faxtomail.reply.object=
+faxtomail.reply.title=
+faxtomail.reply.to=
faxtomail.save.button.label=
faxtomail.search.between2ndPart.label=
faxtomail.search.button.label=
@@ -171,12 +224,36 @@
faxtomail.systemUser=
faxtomail.transmit.button.label=
swing.error.cannot.mail=
+swing.error.cannot.open.file=
swing.error.cannot.open.link=
swing.error.desktop.browse.not.supported=
swing.error.desktop.mail.not.supported=
swing.error.desktop.not.supported=
test=
tutti.action.create.error=
+tutti.attachmentEditor.action.add.mnemonic=
+tutti.attachmentEditor.action.add.tip=
+tutti.attachmentEditor.action.closeAttachment.tip=
+tutti.attachmentEditor.action.open.mnemonic=
+tutti.attachmentEditor.action.open.tip=
+tutti.attachmentEditor.action.remove.mnemonic=
+tutti.attachmentEditor.action.remove.tip=
+tutti.attachmentEditor.action.save.mnemonic=
+tutti.attachmentEditor.action.save.tip=
+tutti.attachmentEditor.action.tip=
+tutti.attachmentEditor.deleteAttachment.message=
+tutti.attachmentEditor.deleteAttachment.title=
+tutti.attachmentEditor.field.file=
+tutti.attachmentEditor.field.fileComment=
+tutti.attachmentEditor.field.fileName=
+tutti.attachmentEditor.fileNotFound=
+tutti.attachmentEditor.none.tip=
+tutti.attachmentEditor.saveAttachment.button=
+tutti.attachmentEditor.saveAttachment.error.message=
+tutti.attachmentEditor.saveAttachment.success.message=
+tutti.attachmentEditor.saveAttachment.title=
+tutti.attachmentEditor.text=
+tutti.attachmentEditor.title=
tutti.common.datefield.tip=
tutti.config.title=
tutti.db.deleteCache.error=
Modified: trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties 2014-02-25 09:19:54 UTC (rev 12)
@@ -14,10 +14,42 @@
application.error.ui.business.warning=
faxtomail.alert.alreadyTakenBy.message=Le document est déjà attribué à l'utilisateur %s.
faxtomail.alert.alreadyTakenBy.title=Document déjà attribué
+faxtomail.attachmentEditor.action.add.mnemonic=A
+faxtomail.attachmentEditor.action.add.tip=Ajouter une pièce jointe
+faxtomail.attachmentEditor.action.closeAttachment.tip=Fermer la fenêtre des pièces-jointes
+faxtomail.attachmentEditor.action.open.mnemonic=O
+faxtomail.attachmentEditor.action.open.tip=Ouvrir la pièce jointe
+faxtomail.attachmentEditor.action.remove.mnemonic=u
+faxtomail.attachmentEditor.action.remove.tip=Supprimer la pièce jointe
+faxtomail.attachmentEditor.action.save.mnemonic=E
+faxtomail.attachmentEditor.action.save.tip=Enregistrer la pièce jointe en local
+faxtomail.attachmentEditor.action.tip=Pièces jointes
+faxtomail.attachmentEditor.deleteAttachment.message=Êtes-vous sûr de vouloir supprimer la pièce-jointe %s ?
+faxtomail.attachmentEditor.deleteAttachment.title=Suppression de pièce-jointe
+faxtomail.attachmentEditor.field.file=Fichier
+faxtomail.attachmentEditor.field.fileComment=Commentaire
+faxtomail.attachmentEditor.field.fileName=Nom
+faxtomail.attachmentEditor.fileNotFound=Le fichier %s de la pièce jointe n'a pas été trouvé
+faxtomail.attachmentEditor.none.tip=Pas de pièce-jointes
+faxtomail.attachmentEditor.saveAttachment.button=Enregistrer
+faxtomail.attachmentEditor.saveAttachment.error.message=Erreur lors de l'enregistrement de la pièce jointe %1s dans le fichier %2s
+faxtomail.attachmentEditor.saveAttachment.success.message=Le fichier %s a été sauvegardé sur votre machine
+faxtomail.attachmentEditor.saveAttachment.title=Enregistrer la pièce-jointe
+faxtomail.attachmentEditor.text=Pièces jointes (%s)
+faxtomail.attachmentEditor.title=Pièces jointes
+faxtomail.chooseMailFolder.action.cancel=Annuler
+faxtomail.chooseMailFolder.action.cancel.mnemonic=A
+faxtomail.chooseMailFolder.action.cancel.tip=Annuler et fermer la popup
+faxtomail.chooseMailFolder.action.validate=Valider
+faxtomail.chooseMailFolder.action.validate.mnemonic=V
+faxtomail.chooseMailFolder.action.validate.tip=Valider et transférer le mail
+faxtomail.chooseMailFolder.title=Choisissez le dossier où transférer le mail
faxtomail.config.application=
faxtomail.config.title=
faxtomail.demande.archive.button.label=Archiver
+faxtomail.demande.archive.button.mnemonic=V
faxtomail.demande.back.button.label=Annuler
+faxtomail.demande.back.button.mnemonic=A
faxtomail.demande.client.label=Client
faxtomail.demande.demandeNumber.label=N° Devis/Cde
faxtomail.demande.docType.label=Type
@@ -32,15 +64,20 @@
faxtomail.demande.message.label=Message
faxtomail.demande.object.label=Objet
faxtomail.demande.print.button.label=Imprimer
+faxtomail.demande.print.button.mnemonic=I
faxtomail.demande.priority.label=Priorité
faxtomail.demande.projectReference.label=Référence travaux
faxtomail.demande.receivedDate.label=Reçu le
+faxtomail.demande.reply.button.label=Répondre
+faxtomail.demande.reply.button.mnemonic=R
faxtomail.demande.savNumber.label=SAV
faxtomail.demande.save.button.label=Enregistrer
+faxtomail.demande.save.button.mnemonic=E
faxtomail.demande.sender.label=Émetteur
faxtomail.demande.status.label=Statut
faxtomail.demande.takenBy.label=Pris par
faxtomail.demande.transmit.button.label=Transmettre
+faxtomail.demande.transmit.button.mnemonic=T
faxtomail.demandeList.action.attachment=Ajouter une pièce-jointe
faxtomail.demandeList.action.attachment.mnemonic=A
faxtomail.demandeList.action.attachment.tip=Ajouter une pièce-jointe
@@ -66,6 +103,9 @@
faxtomail.demandeList.table.header.user=Pris pas
faxtomail.demandeList.table.header.waitingState=État attente
faxtomail.demandeList.title=Gestion des fax
+faxtomail.historyList.action.tip=Historique
+faxtomail.historyList.text=Historique (%s)
+faxtomail.historyList.title=Historique
faxtomail.i18n.deleteCache.error=
faxtomail.i18n.mkDir.error=
faxtomail.main.action.configuration=Configuration
@@ -88,6 +128,21 @@
faxtomail.main.title.application=FaxToMail
faxtomail.main.title.applicationName=FaxToMail
faxtomail.main.title.nodb=
+faxtomail.rangeRows.table.header.command_number=Numéro de commande / devis
+faxtomail.rangeRows.table.header.product_column=Quantité de produits
+faxtomail.rangeRows.table.header.range=Gamme
+faxtomail.rangeRows.table.header.sav_quantity=Quantité de SAV
+faxtomail.reply.action.cancel=Annuler
+faxtomail.reply.action.cancel.mnemonic=A
+faxtomail.reply.action.cancel.tip=Annuler et fermer la popup
+faxtomail.reply.action.validate=Valider
+faxtomail.reply.action.validate.mnemonic=V
+faxtomail.reply.action.validate.tip=Valider et répondre au mail
+faxtomail.reply.attachment=
+faxtomail.reply.from=De \:
+faxtomail.reply.object=Objet \:
+faxtomail.reply.title=Réponse à \: %s
+faxtomail.reply.to=À \:
faxtomail.search.between2ndPart.label=et le
faxtomail.search.button.label=Rechercher
faxtomail.search.chantier.label=Chantier
@@ -104,3 +159,4 @@
faxtomail.search.status.label=Statut
faxtomail.search.title=Recherche
faxtomail.systemUser=Système
+swing.error.cannot.open.file=
Modified: trunk/faxtomail-ui-swing/src/main/resources/log4j.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/main/resources/log4j.properties 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-swing/src/main/resources/log4j.properties 2014-02-25 09:19:54 UTC (rev 12)
@@ -26,7 +26,7 @@
log4j.appender.console.layout.ConversionPattern=%d{yyyy/MM/dd hh:mm:ss} %5p (%F:%L) %M %m%n
# global level
-log4j.logger.com.franciaflex.faxtomail=DEBUG
+log4j.logger.com.franciaflex.faxtomail.ui.swing=DEBUG
### persistence level
# log4j.logger.org.nuiton.topia=TRACE
Modified: trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java
===================================================================
--- trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java 2014-02-25 09:19:54 UTC (rev 12)
@@ -158,13 +158,14 @@
result.put(Email.PROPERTY_PROJECT_REFERENCE, "Référence travaux");
result.put(Email.PROPERTY_PRIORITY, "Priorité");
result.put(Email.PROPERTY_SAV_NUMBER, "Numéro SAV");
- result.put(Email.PROPERTY_RANGE, "Gamme");
+ result.put(Email.PROPERTY_RANGE_ROW, "Gamme");
result.put(Email.PROPERTY_MAIL_FOLDER, "Dossier");
result.put(Email.PROPERTY_CLIENT, "Client");
result.put(Email.PROPERTY_DEMAND_STATUS, "Statut");
result.put(Email.PROPERTY_DEMAND_TYPE, "Type");
result.put(Email.PROPERTY_TAKEN_BY, "Pris par");
result.put(Email.PROPERTY_ETAT_ATTENTE, "État attente");
+ result.put(Email.PROPERTY_ATTACHMENT, "Pièces jointes");
return result;
}
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-02-18 09:55:51 UTC (rev 11)
+++ trunk/pom.xml 2014-02-25 09:19:54 UTC (rev 12)
@@ -449,6 +449,30 @@
<scope>compile</scope>
</dependency>
+ <!--<dependency>-->
+ <!--<groupId>net.atlanticbb.tantlinger</groupId>-->
+ <!--<artifactId>shef</artifactId>-->
+ <!--<version>2009-05-12</version>-->
+ <!--</dependency>-->
+
+ <!--<dependency>-->
+ <!--<groupId>jtidy</groupId>-->
+ <!--<artifactId>jtidy</artifactId>-->
+ <!--<version>8.0</version>-->
+ <!--</dependency>-->
+
+ <!--<dependency>-->
+ <!--<groupId>org.bushe</groupId>-->
+ <!--<artifactId>sam</artifactId>-->
+ <!--<version>1.0</version>-->
+ <!--</dependency>-->
+
+ <!--<dependency>-->
+ <!--<groupId>novaworx</groupId>-->
+ <!--<artifactId>novaworx-syntax</artifactId>-->
+ <!--<version>0.0.7</version>-->
+ <!--</dependency>-->
+
</dependencies>
</dependencyManagement>
1
0
Author: kmorin
Date: 2014-02-18 10:55:51 +0100 (Tue, 18 Feb 2014)
New Revision: 11
Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/11
Log:
remove unuseful required properties
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-02-14 17:28:56 UTC (rev 10)
+++ trunk/pom.xml 2014-02-18 09:55:51 UTC (rev 11)
@@ -554,18 +554,18 @@
<phase>initialize</phase>
<configuration>
<rules>
- <requireProperty>
- <property>jreVersion</property>
- <message>You must set a jreVersion property!</message>
- </requireProperty>
- <requireProperty>
- <property>dbVersion</property>
- <message>You must set a dbVersion property!</message>
- </requireProperty>
- <requireProperty>
- <property>reportVersion</property>
- <message>You must set a reportVersion property!</message>
- </requireProperty>
+ <!--<requireProperty>-->
+ <!--<property>jreVersion</property>-->
+ <!--<message>You must set a jreVersion property!</message>-->
+ <!--</requireProperty>-->
+ <!--<requireProperty>-->
+ <!--<property>dbVersion</property>-->
+ <!--<message>You must set a dbVersion property!</message>-->
+ <!--</requireProperty>-->
+ <!--<requireProperty>-->
+ <!--<property>reportVersion</property>-->
+ <!--<message>You must set a reportVersion property!</message>-->
+ <!--</requireProperty>-->
</rules>
<ignoreCache>true</ignoreCache>
<failFast>true</failFast>
1
0
14 Feb '14
Author: kmorin
Date: 2014-02-14 18:28:56 +0100 (Fri, 14 Feb 2014)
New Revision: 10
Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/10
Log:
continue
Added:
trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/
trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/HistoryType.java
Removed:
trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entity/
Modified:
trunk/faxtomail-persistence/src/main/xmi/faxtomail.zargo
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java
trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/UserService.java
trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties
trunk/faxtomail-ui-swing/src/main/assembly/faxtomail-full-component.xml
trunk/faxtomail-ui-swing/src/main/assembly/full-linux-i586.xml
trunk/faxtomail-ui-swing/src/main/assembly/full-linux-x64.xml
trunk/faxtomail-ui-swing/src/main/assembly/full-windows-i586.xml
trunk/faxtomail-ui-swing/src/main/assembly/full-windows-x64.xml
trunk/faxtomail-ui-swing/src/main/assembly/full/faxtomail.sh
trunk/faxtomail-ui-swing/src/main/assembly/i18n.xml
trunk/faxtomail-ui-swing/src/main/assembly/min/launch.sh
trunk/faxtomail-ui-swing/src/main/assembly/standalone.xml
trunk/faxtomail-ui-swing/src/main/filtered-resources/log4j.properties
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailActionFactory.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailScreen.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/RunFaxToMail.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractFaxToMailAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractMainUIFaxToMailAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/CloseApplicationAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GoToPreviousScreenAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReloadFaxToMailAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowConfigAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeListAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/StartAction.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/FolderTreeNode.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.css
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.jaxx
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailBeanUIModel.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/Cancelable.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/CloseableUI.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailExceptionHandler.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUI.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/RemoveablePropertyChangeListener.java
trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/UIMessageNotifier.java
trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties
trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties
trunk/faxtomail-ui-swing/src/main/resources/log4j.properties
trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java
trunk/pom.xml
Added: trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/HistoryType.java
===================================================================
--- trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/HistoryType.java (rev 0)
+++ trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/HistoryType.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -0,0 +1,11 @@
+package com.franciaflex.faxtomail.persistence.entities;
+
+/**
+ * @author Kevin Morin (Code Lutin)
+ * @since x.x
+ */
+public enum HistoryType {
+
+ OPENING,
+ MODIFICATION
+}
Modified: trunk/faxtomail-persistence/src/main/xmi/faxtomail.zargo
===================================================================
(Binary files differ)
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceSupport.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -28,6 +28,7 @@
import com.franciaflex.faxtomail.persistence.entities.FaxToMailTopiaPersistenceContext;
import com.franciaflex.faxtomail.services.service.CompanyService;
import com.franciaflex.faxtomail.services.service.ConfigurationService;
+import com.franciaflex.faxtomail.services.service.EmailService;
import com.franciaflex.faxtomail.services.service.FaxToMailWebApplicationContext;
import com.franciaflex.faxtomail.services.service.MailFilterService;
import com.franciaflex.faxtomail.services.service.MailFolderService;
@@ -74,7 +75,12 @@
public MailFolderService getMailFolderService() {
return newService(MailFolderService.class);
}
+
public MailFilterService getMailFilterService() {
return newService(MailFilterService.class);
}
+
+ public EmailService getEmailService() {
+ return newService(EmailService.class);
+ }
}
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -2,11 +2,18 @@
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.EmailTopiaDao;
+import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
+import com.franciaflex.faxtomail.persistence.entities.History;
+import com.franciaflex.faxtomail.persistence.entities.HistoryTopiaDao;
+import com.franciaflex.faxtomail.persistence.entities.HistoryType;
import com.franciaflex.faxtomail.persistence.entities.MailFolder;
import com.franciaflex.faxtomail.services.FaxToMailServiceSupport;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Date;
import java.util.List;
/**
@@ -15,8 +22,30 @@
*/
public class EmailService extends FaxToMailServiceSupport {
+ private static final Log log = LogFactory.getLog(EmailService.class);
+
public List<Email> getEmailForFolder(MailFolder folder) {
EmailTopiaDao dao = getPersistenceContext().getEmailDao();
return new ArrayList<>(dao.forMailFolderEquals(folder).findAll());
}
+
+ public Email addToOpeningHistory(Email email, FaxToMailUser user, Date date) {
+ HistoryTopiaDao historyDao = getPersistenceContext().getHistoryDao();
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.OPENING,
+ History.PROPERTY_FAX_TO_MAIL_USER, user,
+ History.PROPERTY_MODIFICATION_DATE, date);
+
+ email.addHistory(history);
+
+ if (email.getTakenBy() == null) {
+ email.setTakenBy(user);
+ }
+
+ EmailTopiaDao emailDao = getPersistenceContext().getEmailDao();
+ email = emailDao.update(email);
+ getPersistenceContext().commit();
+
+ log.info("history " + email.getHistory().size());
+ return email;
+ }
}
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/InitFaxToMailService.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -38,6 +38,9 @@
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUserGroup;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUserGroupTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUserTopiaDao;
+import com.franciaflex.faxtomail.persistence.entities.History;
+import com.franciaflex.faxtomail.persistence.entities.HistoryTopiaDao;
+import com.franciaflex.faxtomail.persistence.entities.HistoryType;
import com.franciaflex.faxtomail.persistence.entities.MailFolder;
import com.franciaflex.faxtomail.persistence.entities.MailFolderTopiaDao;
import com.franciaflex.faxtomail.persistence.entities.Priority;
@@ -151,94 +154,152 @@
rangeDao.create(Range.PROPERTY_LABEL, "Accessoires")
);
+ FaxToMailUserTopiaDao userDao = getPersistenceContext().getFaxToMailUserDao();
+ FaxToMailUser marc = userDao.create(FaxToMailUser.PROPERTY_NAME, "Marc Lefebvre", FaxToMailUser.PROPERTY_LOGIN, "mlefebvre");
+ FaxToMailUser cyril = userDao.create(FaxToMailUser.PROPERTY_NAME, "Cyril Baillet", FaxToMailUser.PROPERTY_LOGIN, "cbaillet");
+ FaxToMailUser frederic = userDao.create(FaxToMailUser.PROPERTY_NAME, "Frédéric Viala", FaxToMailUser.PROPERTY_LOGIN, "fviala");
+ FaxToMailUser claire = userDao.create(FaxToMailUser.PROPERTY_NAME, "Claire Marquis", FaxToMailUser.PROPERTY_LOGIN, "cmarquis");
+ FaxToMailUser agathe = userDao.create(FaxToMailUser.PROPERTY_NAME, "Agathe Borde", FaxToMailUser.PROPERTY_LOGIN, "aborde");
+ FaxToMailUser jeanne = userDao.create(FaxToMailUser.PROPERTY_NAME, "Jeanne Bourgoin", FaxToMailUser.PROPERTY_LOGIN, "jbourgoin");
+
MailFolderTopiaDao folderDao = getPersistenceContext().getMailFolderDao();
List<MailFolder> folders = new ArrayList<>();
Random random = new Random();
EmailTopiaDao emailDao = getPersistenceContext().getEmailDao();
+ HistoryTopiaDao historyDao = getPersistenceContext().getHistoryDao();
- MailFolder cyril = folderDao.create(MailFolder.PROPERTY_NAME, "Cyril");
+ MailFolder cyrilFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Cyril");
int r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+
+ Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, cyril,
+ Email.PROPERTY_MAIL_FOLDER, cyrilFolder,
Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))));
+ Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
+ Email.PROPERTY_HISTORY, Lists.newArrayList(history));
+
+
+ if (random.nextBoolean()) {
+ getEmailService().addToOpeningHistory(email, cyril, new Date());
+ }
}
- MailFolder claire = folderDao.create(MailFolder.PROPERTY_NAME, "Claire");
+ MailFolder claireFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Claire");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+
+ Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, claire,
+ Email.PROPERTY_MAIL_FOLDER, claireFolder,
Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))));
+ Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
+ Email.PROPERTY_HISTORY, Lists.newArrayList(history));
+
+ if (random.nextBoolean()) {
+ getEmailService().addToOpeningHistory(email, claire, new Date());
+ }
}
- MailFolder agathe = folderDao.create(MailFolder.PROPERTY_NAME, "Agathe");
+ MailFolder agatheFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Agathe");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+
+ Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, agathe,
+ Email.PROPERTY_MAIL_FOLDER, agatheFolder,
Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))));
+ Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
+ Email.PROPERTY_HISTORY, Lists.newArrayList(history));
+
+ if (random.nextBoolean()) {
+ getEmailService().addToOpeningHistory(email, agathe, new Date());
+ }
}
folders.add(folderDao.create(MailFolder.PROPERTY_NAME, "Chargés de clientèle",
- MailFolder.PROPERTY_CHILDREN, Lists.newArrayList(cyril, claire, agathe)));
+ MailFolder.PROPERTY_CHILDREN, Lists.newArrayList(cyrilFolder, claireFolder, agatheFolder)));
- MailFolder marc = folderDao.create(MailFolder.PROPERTY_NAME, "Marc");
+ MailFolder marcFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Marc");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+
+ Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, marc,
+ Email.PROPERTY_MAIL_FOLDER, marcFolder,
Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))));
+ Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
+ Email.PROPERTY_HISTORY, Lists.newArrayList(history));
+
+ if (random.nextBoolean()) {
+ getEmailService().addToOpeningHistory(email, marc, new Date());
+ }
}
- MailFolder frederic = folderDao.create(MailFolder.PROPERTY_NAME, "Frédéric");
+ MailFolder fredericFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Frédéric");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+
+ Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, frederic,
+ Email.PROPERTY_MAIL_FOLDER, fredericFolder,
Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))));
+ Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
+ Email.PROPERTY_HISTORY, Lists.newArrayList(history));
+
+ if (random.nextBoolean()) {
+ getEmailService().addToOpeningHistory(email, frederic, new Date());
+ }
}
- MailFolder jeanne = folderDao.create(MailFolder.PROPERTY_NAME, "Jeanne");
+ MailFolder jeanneFolder = folderDao.create(MailFolder.PROPERTY_NAME, "Jeanne");
r = random.nextInt(10) + 5;
for (int i = 0 ; i < r ; i++) {
- emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
+ History history = historyDao.create(History.PROPERTY_TYPE, HistoryType.MODIFICATION,
+ History.PROPERTY_MODIFICATION_DATE, new Date());
+
+ Email email = emailDao.create(Email.PROPERTY_SENDER_EMAIL_ADDRESS, RandomStringUtils.randomAlphabetic(8) + "@" + RandomStringUtils.randomAlphabetic(5) + ".fr",
Email.PROPERTY_OBJECT, RandomStringUtils.randomAlphabetic(10),
Email.PROPERTY_RECEPTION_DATE, new Date(),
- Email.PROPERTY_MAIL_FOLDER, jeanne,
+ Email.PROPERTY_MAIL_FOLDER, jeanneFolder,
Email.PROPERTY_DEMAND_TYPE, types.get(random.nextInt(types.size())),
Email.PROPERTY_DEMAND_STATUS, statuses.get(random.nextInt(statuses.size())),
Email.PROPERTY_PRIORITY, priorities.get(random.nextInt(priorities.size())),
- Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))));
+ Email.PROPERTY_RANGE, Lists.newArrayList(ranges.get(random.nextInt(ranges.size()))),
+ Email.PROPERTY_HISTORY, Lists.newArrayList(history));
+
+ if (random.nextBoolean()) {
+ getEmailService().addToOpeningHistory(email, jeanne, new Date());
+ }
}
folders.add(folderDao.create(MailFolder.PROPERTY_NAME, "SAV",
- MailFolder.PROPERTY_CHILDREN, Lists.newArrayList(marc, frederic, jeanne)));
+ MailFolder.PROPERTY_CHILDREN, Lists.newArrayList(marcFolder, fredericFolder, jeanneFolder)));
// companies
CompanyTopiaDao companyTopiaDao = getPersistenceContext().getCompanyDao();
Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/UserService.java
===================================================================
--- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/UserService.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/UserService.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -20,6 +20,12 @@
return new ArrayList<>(dao.findAll());
}
+ public FaxToMailUser getUserByLogin(String login) {
+ FaxToMailUserTopiaDao dao = getPersistenceContext().getFaxToMailUserDao();
+ FaxToMailUser user = dao.forLoginEquals(login).findUnique();
+ return user;
+ }
+
public List<FaxToMailUserGroup> getAllUserGroups() {
FaxToMailUserGroupTopiaDao dao = getPersistenceContext().getFaxToMailUserGroupDao();
return new ArrayList<>(dao.findAll());
Modified: trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/license/THIRD-PARTY.properties 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+###
+# #%L
+# FaxToMail :: UI
+# %%
+# Copyright (C) 2014 Franciaflex
+# %%
+# 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 3 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, see
+# <http://www.gnu.org/licenses/gpl-3.0.html>.
+# #L%
+###
# Generated by org.codehaus.mojo.license.AddThirdPartyMojo
#-------------------------------------------------------------------------------
# Already used licenses in project :
Modified: trunk/faxtomail-ui-swing/src/main/assembly/faxtomail-full-component.xml
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/faxtomail-full-component.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/faxtomail-full-component.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,15 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
#%L
- Tutti :: UI
- $Id: tutti-full-component.xml 1460 2013-12-10 18:52:55Z tchemit $
- $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/asse… $
+ FaxToMail :: UI
%%
- Copyright (C) 2012 Ifremer
+ Copyright (C) 2014 Franciaflex
%%
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 3 of the
+ published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -17,12 +15,13 @@
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
+ You should have received a copy of the GNU General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
-->
+
<component
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/component/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Modified: trunk/faxtomail-ui-swing/src/main/assembly/full/faxtomail.sh
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/full/faxtomail.sh 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/full/faxtomail.sh 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,7 +1,29 @@
#!/bin/bash
+###
+# #%L
+# FaxToMail :: UI
+# %%
+# Copyright (C) 2014 Franciaflex
+# %%
+# 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 3 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, see
+# <http://www.gnu.org/licenses/gpl-3.0.html>.
+# #L%
+###
+
export FAXTOMAIL_BASEDIR=$(pwd)
-export FAXTOMAIL_HOME=$FAXTOMAIL_BASEDIR/tutti
+export FAXTOMAIL_HOME=$FAXTOMAIL_BASEDIR/faxtomail
export JAVA_HOME=$FAXTOMAIL_BASEDIR/jre
export JAVA_COMMAND=$JAVA_HOME/bin/java
export FAXTOMAIL_LOG_FILE=$FAXTOMAIL_BASEDIR/data/faxtomail-${project.version}.log
Modified: trunk/faxtomail-ui-swing/src/main/assembly/full-linux-i586.xml
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/full-linux-i586.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/full-linux-i586.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,15 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
#%L
- Tutti :: UI
- $Id: full-linux-i586.xml 248 2013-01-28 11:22:28Z tchemit $
- $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/asse… $
+ FaxToMail :: UI
%%
- Copyright (C) 2012 Ifremer
+ Copyright (C) 2014 Franciaflex
%%
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 3 of the
+ published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -17,12 +15,13 @@
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
+ You should have received a copy of the GNU General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
-->
+
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Modified: trunk/faxtomail-ui-swing/src/main/assembly/full-linux-x64.xml
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/full-linux-x64.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/full-linux-x64.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,15 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
#%L
- Tutti :: UI
- $Id: full-linux-x64.xml 248 2013-01-28 11:22:28Z tchemit $
- $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/asse… $
+ FaxToMail :: UI
%%
- Copyright (C) 2012 Ifremer
+ Copyright (C) 2014 Franciaflex
%%
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 3 of the
+ published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -17,12 +15,13 @@
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
+ You should have received a copy of the GNU General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
-->
+
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Modified: trunk/faxtomail-ui-swing/src/main/assembly/full-windows-i586.xml
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/full-windows-i586.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/full-windows-i586.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,15 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
#%L
- Tutti :: UI
- $Id: full-windows-i586.xml 248 2013-01-28 11:22:28Z tchemit $
- $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/asse… $
+ FaxToMail :: UI
%%
- Copyright (C) 2012 Ifremer
+ Copyright (C) 2014 Franciaflex
%%
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 3 of the
+ published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -17,12 +15,13 @@
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
+ You should have received a copy of the GNU General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
-->
+
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Modified: trunk/faxtomail-ui-swing/src/main/assembly/full-windows-x64.xml
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/full-windows-x64.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/full-windows-x64.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,15 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
#%L
- Tutti :: UI
- $Id: full-windows-x64.xml 248 2013-01-28 11:22:28Z tchemit $
- $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/asse… $
+ FaxToMail :: UI
%%
- Copyright (C) 2012 Ifremer
+ Copyright (C) 2014 Franciaflex
%%
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 3 of the
+ published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -17,12 +15,13 @@
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
+ You should have received a copy of the GNU General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
-->
+
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Modified: trunk/faxtomail-ui-swing/src/main/assembly/i18n.xml
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/i18n.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/i18n.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,14 +1,12 @@
<!--
#%L
- Tutti :: UI
- $Id: i18n.xml 582 2013-03-12 09:33:46Z tchemit $
- $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/asse… $
+ FaxToMail :: UI
%%
- Copyright (C) 2012 - 2013 Ifremer
+ Copyright (C) 2014 Franciaflex
%%
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 3 of the
+ published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -16,7 +14,7 @@
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
+ You should have received a copy of the GNU General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
@@ -37,8 +35,8 @@
<directory>target/classes/META-INF</directory>
<outputDirectory/>
<includes>
- <include>tutti-i18n*.properties</include>
- <include>tutti-i18n*.csv</include>
+ <include>faxtomail-i18n*.properties</include>
+ <include>faxtomail-i18n*.csv</include>
</includes>
</fileSet>
Modified: trunk/faxtomail-ui-swing/src/main/assembly/min/launch.sh
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/min/launch.sh 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/min/launch.sh 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
#!/bin/bash
+###
+# #%L
+# FaxToMail :: UI
+# %%
+# Copyright (C) 2014 Franciaflex
+# %%
+# 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 3 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, see
+# <http://www.gnu.org/licenses/gpl-3.0.html>.
+# #L%
+###
+
MEMORY="-Xmx1024M -XX:MaxPermSize=128M"
#FAXTOMAIL_JVM_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000"
@@ -9,7 +31,7 @@
#echo "java command: $JAVA_COMMAND"
-$JAVA_COMMAND $MEMORY $FAXTOMAIL_JVM_OPTS -Dtutti.log.file=$FAXTOMAIL_LOG_FILE -jar ${project.build.finalName}.${project.packaging} $*
+$JAVA_COMMAND $MEMORY $FAXTOMAIL_JVM_OPTS -Dfaxtomail.log.file=$FAXTOMAIL_LOG_FILE -jar ${project.build.finalName}.${project.packaging} $*
exitcode=$?
echo "Stop FaxToMail with exitcode: $exitcode"
exit $exitcode
Modified: trunk/faxtomail-ui-swing/src/main/assembly/standalone.xml
===================================================================
--- trunk/faxtomail-ui-swing/src/main/assembly/standalone.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/assembly/standalone.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,15 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
#%L
- Tutti :: UI
- $Id: standalone.xml 399 2013-02-11 17:33:57Z tchemit $
- $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/asse… $
+ FaxToMail :: UI
%%
- Copyright (C) 2012 Ifremer
+ Copyright (C) 2014 Franciaflex
%%
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 3 of the
+ published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -17,12 +15,13 @@
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
+ You should have received a copy of the GNU General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/gpl-3.0.html>.
#L%
-->
+
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Modified: trunk/faxtomail-ui-swing/src/main/filtered-resources/log4j.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/main/filtered-resources/log4j.properties 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/filtered-resources/log4j.properties 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+###
+# #%L
+# FaxToMail :: UI
+# %%
+# Copyright (C) 2014 Franciaflex
+# %%
+# 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 3 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, see
+# <http://www.gnu.org/licenses/gpl-3.0.html>.
+# #L%
+###
# Global logging configuration
log4j.rootLogger=ERROR, stdout, file
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailActionFactory.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailActionFactory.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailActionFactory.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -2,15 +2,13 @@
/*
* #%L
- * Tutti :: UI
- * $Id: TuttiActionFactory.java 1566 2014-02-04 08:31:02Z tchemit $
- * $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/java… $
+ * FaxToMail :: UI
* %%
- * Copyright (C) 2012 - 2013 Ifremer
+ * Copyright (C) 2014 Franciaflex
* %%
* 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 3 of the
+ * published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
@@ -18,7 +16,7 @@
* 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
+ * You should have received a copy of the GNU General Public
* License along with this program. If not, see
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailScreen.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailScreen.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailScreen.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
/**
* Enumeration of any internal screen of application.
*
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/FaxToMailUIContext.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,10 +1,34 @@
package com.franciaflex.faxtomail.ui.swing;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.FaxToMailConfiguration;
import com.franciaflex.faxtomail.persistence.entities.Company;
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailTopiaApplicationContext;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailTopiaPersistenceContext;
+import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
+import com.franciaflex.faxtomail.persistence.entities.MailFolder;
import com.franciaflex.faxtomail.services.DecoratorService;
import com.franciaflex.faxtomail.services.FaxToMailServiceContext;
import com.franciaflex.faxtomail.persistence.RessourceClassLoader;
@@ -13,6 +37,7 @@
import com.franciaflex.faxtomail.services.service.InitFaxToMailService;
import com.franciaflex.faxtomail.services.service.MailFolderService;
import com.franciaflex.faxtomail.services.service.ReferentielService;
+import com.franciaflex.faxtomail.services.service.UserService;
import com.franciaflex.faxtomail.ui.swing.content.MainUI;
import com.franciaflex.faxtomail.ui.swing.util.UIMessageNotifier;
import com.google.common.base.Preconditions;
@@ -41,14 +66,19 @@
import org.nuiton.util.converter.ConverterUtil;
import javax.swing.*;
+import javax.swing.event.RowSorterEvent;
+import javax.swing.tree.TreePath;
import java.awt.*;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.Closeable;
import java.io.File;
+import java.util.ArrayList;
+import java.util.Enumeration;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
+import java.util.List;
import static org.nuiton.i18n.I18n.t;
@@ -181,8 +211,12 @@
protected Company currentCompany;
+ protected FaxToMailUser currentUser;
+
protected Email currentEmail;
+ protected List<MailFolder> expandedFolders = new ArrayList<MailFolder>();
+
public static FaxToMailUIContext newContext(FaxToMailConfiguration config) {
Preconditions.checkNotNull(config);
Preconditions.checkState(applicationContext == null,
@@ -405,6 +439,9 @@
Company franciaflex = getCompanyService().getCompanyByName("Franciaflex");
setCurrentCompany(franciaflex);
+ FaxToMailUser currentUser = getUserService().getUserByLogin("mlefebvre");
+ setCurrentUser(currentUser);
+
// //--------------------------------------------------------------------//
// // init action UI
// //--------------------------------------------------------------------//
@@ -480,6 +517,10 @@
return serviceContext.newService(CompanyService.class);
}
+ public UserService getUserService() {
+ return serviceContext.newService(UserService.class);
+ }
+
public EmailService getEmailService() {
return serviceContext.newService(EmailService.class);
}
@@ -641,6 +682,14 @@
this.currentCompany = currentCompany;
}
+ public FaxToMailUser getCurrentUser() {
+ return currentUser;
+ }
+
+ public void setCurrentUser(FaxToMailUser currentUser) {
+ this.currentUser = currentUser;
+ }
+
public Email getCurrentEmail() {
return currentEmail;
}
@@ -648,4 +697,12 @@
public void setCurrentEmail(Email currentEmail) {
this.currentEmail = currentEmail;
}
+
+ public List<MailFolder> getExpandedFolders() {
+ return expandedFolders;
+ }
+
+ public void setExpandedFolders(List<MailFolder> expandedFolders) {
+ this.expandedFolders = expandedFolders;
+ }
}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/RunFaxToMail.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/RunFaxToMail.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/RunFaxToMail.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.FaxToMailConfiguration;
import com.franciaflex.faxtomail.ui.swing.content.MainUI;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
@@ -135,7 +157,7 @@
handler.onCloseUI();
//close context
-// context.getSwingSession().save();
+ context.getSwingSession().save();
context.close();
if (exitCode != null) {
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen;
import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractFaxToMailAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractFaxToMailAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractFaxToMailAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.FaxToMailConfiguration;
import com.franciaflex.faxtomail.persistence.ProgressionModel;
import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractMainUIFaxToMailAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractMainUIFaxToMailAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractMainUIFaxToMailAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
import com.franciaflex.faxtomail.ui.swing.content.MainUI;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/CloseApplicationAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/CloseApplicationAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/CloseApplicationAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.RunFaxToMail;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GoToPreviousScreenAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GoToPreviousScreenAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GoToPreviousScreenAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
import static org.nuiton.i18n.I18n.t;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReloadFaxToMailAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReloadFaxToMailAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReloadFaxToMailAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.RunFaxToMail;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowConfigAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowConfigAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowConfigAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,8 +1,38 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
+import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
+import javax.swing.*;
+
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+
+import static org.nuiton.i18n.I18n.t;
+
/**
* To show demande screen.
*
@@ -12,6 +42,17 @@
public class ShowDemandeAction extends AbstractChangeScreenAction {
public ShowDemandeAction(MainUIHandler handler) {
- super(handler, true, FaxToMailScreen.DEMANDE);
+ super(handler, false, FaxToMailScreen.DEMANDE);
}
+
+ @Override
+ public void postSuccessAction() {
+ super.postSuccessAction();
+
+ Email currentEmail = getContext().getCurrentEmail();
+ if (!getContext().getCurrentUser().equals(currentEmail.getTakenBy())) {
+ displayWarningMessage(t("faxtomail.alert.alreadyTakenBy.title"),
+ t("faxtomail.alert.alreadyTakenBy.message", currentEmail.getTakenBy().getName()));
+ }
+ }
}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeListAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeListAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowDemandeListAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen;
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/StartAction.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/StartAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/StartAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.actions;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.css 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.css 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,4 +1,25 @@
/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+/*
#busyBlockLayerUI {
useIcon:false;
blockingColor: {model.getConfig().getColorBlockingLayer()};
@@ -20,6 +41,7 @@
}
#menuFileDemandeList {
+ actionIcon: list;
text: "faxtomail.main.action.demandeList";
toolTipText: "faxtomail.main.action.demandeList.tip";
i18nMnemonic: "faxtomail.main.action.demandeList.mnemonic";
@@ -28,6 +50,7 @@
}
#menuFileRecherche {
+ actionIcon: search;
text: "faxtomail.main.action.recherche";
toolTipText: "faxtomail.main.action.recherche.tip";
i18nMnemonic: "faxtomail.main.action.recherche.mnemonic";
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.jaxx 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUI.jaxx 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,6 +1,27 @@
+<!--
+ #%L
+ FaxToMail :: UI
+ %%
+ Copyright (C) 2014 Franciaflex
+ %%
+ 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 3 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, see
+ <http://www.gnu.org/licenses/gpl-3.0.html>.
+ #L%
+ -->
<JFrame id='mainFrame'
implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<FaxToMailUIContext, MainUIHandler>'
- width='800' height='600'>
+ width='1024' height='780'>
<import>
com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/MainUIHandler.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,28 @@
package com.franciaflex.faxtomail.ui.swing.content;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
+import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen;
import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
import com.franciaflex.faxtomail.ui.swing.RunFaxToMail;
@@ -14,6 +37,8 @@
import com.google.common.base.Preconditions;
import jaxx.runtime.JAXXBinding;
import jaxx.runtime.SwingUtil;
+import jaxx.runtime.swing.JAXXWidgetUtil;
+import jaxx.runtime.swing.session.SwingSession;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -117,9 +142,9 @@
// ui.applyDataBinding(MainUI.BINDING_MENU_CHANGE_LOCALE_UK_ENABLED);
// Init SwingSession
-// SwingSession swingSession = context.getSwingSession();
-// swingSession.add(ui);
-// swingSession.save();
+ SwingSession swingSession = getContext().getSwingSession();
+ swingSession.add(ui);
+ swingSession.save();
// SwingUtil.getLayer(ui.getBody()).setUI(new BetaLayerUI());
@@ -281,7 +306,7 @@
FaxToMailUI<?, ?> body = (FaxToMailUI<?, ?>) currentBody;
body.getHandler().onCloseUI();
-// context.getSwingSession().save();
+ getContext().getSwingSession().save();
ui.getBody().remove(currentBody);
@@ -308,20 +333,21 @@
case SEARCH:
screenUI = new SearchUI(ui);
screenTitle = t("faxtomail.search.title");
- icon = ui.getMenuFileConfiguration().getIcon();
+ icon = ui.getMenuFileRecherche().getIcon();
break;
case DEMANDE:
screenUI = new DemandeUI(ui);
- screenTitle = t("faxtomail.demande.title");
- icon = ui.getMenuFileConfiguration().getIcon();
+ Email currentEmail = getContext().getCurrentEmail();
+ screenTitle = currentEmail.getObject();
+ icon = JAXXWidgetUtil.createActionIcon("email");
break;
default:
case LIST:
screenUI = new DemandeListUI(ui);
screenTitle = t("faxtomail.demandeList.title");
- icon = ui.getMenuFileConfiguration().getIcon();
+ icon = ui.getMenuFileDemandeList().getIcon();
break;
}
@@ -336,7 +362,7 @@
// }
// rightDecoration.add(showHelp, 0);
this.currentBody = screenUI;
-// context.getSwingSession().add(currentBody, true);
+ getContext().getSwingSession().add(currentBody, true);
ui.getBody().setTitle(screenTitle);
ui.getBody().add(currentBody);
ui.getBody().setLeftDecoration(new JLabel(icon));
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.css 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.css 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
#configTopPanel {
_help: {"faxtomail.config.help"};
}
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.jaxx 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUI.jaxx 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+<!--
+ #%L
+ FaxToMail :: UI
+ %%
+ Copyright (C) 2014 Franciaflex
+ %%
+ 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 3 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, see
+ <http://www.gnu.org/licenses/gpl-3.0.html>.
+ #L%
+ -->
<JPanel id='configTopPanel' layout='{new BorderLayout()}'
implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<FaxToMailUIContext, FaxToMailConfigUIHandler>'>
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUIHandler.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/config/FaxToMailConfigUIHandler.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.content.config;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext;
import com.franciaflex.faxtomail.ui.swing.actions.ReloadFaxToMailAction;
import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailUIHandler;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
#navigationTree {
font-size: "11";
rootVisible: false;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.jaxx 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.jaxx 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+<!--
+ #%L
+ FaxToMail :: UI
+ %%
+ Copyright (C) 2014 Franciaflex
+ %%
+ 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 3 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, see
+ <http://www.gnu.org/licenses/gpl-3.0.html>.
+ #L%
+ -->
<JPanel id='demandeListPanel' layout='{new BorderLayout()}'
implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<DemandeListUIModel, DemandeListUIHandler>'>
@@ -42,7 +63,6 @@
</JScrollPane>
<JPanel layout='{new BorderLayout()}'>
- <JLabel id="selectedFolder" constraints='BorderLayout.NORTH'/>
<JScrollPane constraints='BorderLayout.CENTER'>
<JXTable id='dataTable'
onMouseClicked='handler.autoSelectRowInTable(event, tablePopup)'
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -2,15 +2,13 @@
/*
* #%L
- * Tutti :: UI
- * $Id: EditCruiseUIHandler.java 1282 2013-10-07 14:46:55Z tchemit $
- * $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/java… $
+ * FaxToMail :: UI
* %%
- * Copyright (C) 2012 Ifremer
+ * Copyright (C) 2014 Franciaflex
* %%
* 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 3 of the
+ * published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
@@ -18,7 +16,7 @@
* 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
+ * You should have received a copy of the GNU General Public
* License along with this program. If not, see
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
@@ -30,32 +28,47 @@
import com.franciaflex.faxtomail.ui.swing.actions.ShowDemandeAction;
import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailUIHandler;
import com.franciaflex.faxtomail.ui.swing.util.CloseableUI;
+import com.google.common.collect.Lists;
import jaxx.runtime.swing.JAXXWidgetUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.jdesktop.swingx.JXTable;
+import org.jdesktop.swingx.decorator.ComponentAdapter;
+import org.jdesktop.swingx.decorator.HighlightPredicate;
+import org.jdesktop.swingx.decorator.Highlighter;
import org.jdesktop.swingx.table.DefaultTableColumnModelExt;
import org.jdesktop.swingx.table.TableColumnModelExt;
import org.nuiton.jaxx.application.swing.table.AbstractApplicationTableModel;
import javax.swing.*;
+import javax.swing.event.ChangeListener;
+import javax.swing.event.RowSorterEvent;
+import javax.swing.event.RowSorterListener;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
+import javax.swing.table.TableModel;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreeModel;
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.TreePath;
+import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.Date;
+import java.util.Enumeration;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import static org.nuiton.i18n.I18n.t;
@@ -70,25 +83,6 @@
/** Logger. */
private static final Log log = LogFactory.getLog(DemandeListUIHandler.class);
-
- public static String getTitle(boolean exist) {
-
- String result;
- if (exist) {
- result = t("tutti.editCruise.title.edit.cruise");
- } else {
- result = t("tutti.editCruise.title.create.cruise");
- }
- return result;
- }
-
- /**
- * Persistence service.
- *
- * @since 0.1
- */
-// private final PersistenceService persistenceService;
-
@Override
public void beforeInit(DemandeListUI ui) {
@@ -119,8 +113,11 @@
// init tree
DefaultMutableTreeNode root = new DefaultMutableTreeNode("root");
+
+ List<MailFolder> foldersToExpand = getContext().getExpandedFolders();
+ Map<MailFolder, DefaultMutableTreeNode> nodesByFolder = new HashMap<MailFolder, DefaultMutableTreeNode>();
for (MailFolder folder : getModel().getFolders()) {
- createFolderTree(root, folder);
+ nodesByFolder.putAll(createFolderTree(root, folder));
}
TreeModel treeModel = new DefaultTreeModel(root);
@@ -133,7 +130,6 @@
renderer.setLeafIcon(folderIcon);
navigationTree.setCellRenderer(renderer);
- JAXXWidgetUtil.expandTree(navigationTree);
navigationTree.addTreeSelectionListener(new TreeSelectionListener() {
@Override
public void valueChanged(TreeSelectionEvent e) {
@@ -143,6 +139,12 @@
}
});
+ // expand nodes
+ for (MailFolder folder : foldersToExpand) {
+ DefaultMutableTreeNode node = nodesByFolder.get(folder);
+ navigationTree.expandPath(new TreePath(node.getPath()));
+ }
+
// init table
TableColumnModelExt columnModel = new DefaultTableColumnModelExt();
Company franciaflex = getContext().getCurrentCompany();
@@ -161,18 +163,51 @@
.setSortable(true);
}
- final AbstractApplicationTableModel tableModel = new DemandeTableModel(columnModel);
+ final AbstractApplicationTableModel<Email> tableModel = new DemandeTableModel(columnModel);
JXTable table = ui.getDataTable();
table.setModel(tableModel);
table.setColumnModel(columnModel);
table.getTableHeader().setReorderingAllowed(false);
+ Highlighter highlighter = new Highlighter() {
+ @Override
+ public Component highlight(Component renderer, ComponentAdapter adapter) {
+ int viewRow = adapter.row;
+ int modelRow = adapter.convertRowIndexToModel(viewRow);
+ Email row = (Email) tableModel.getEntry(modelRow);
+ boolean highlight = row.getTakenBy() == null;
+ if (highlight) {
+ Font font = renderer.getFont();
+ renderer.setFont(font.deriveFont(Font.BOLD));
+ }
+ return renderer;
+ }
+
+ @Override
+ public void addChangeListener(ChangeListener l) {
+ }
+
+ @Override
+ public void removeChangeListener(ChangeListener l) {
+ }
+
+ @Override
+ public ChangeListener[] getChangeListeners() {
+ return new ChangeListener[0];
+ }
+ };
+ table.addHighlighter(highlighter);
+
table.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
JXTable table = (JXTable) evt.getSource();
if (evt.getClickCount() == 2) {
int rowIndex = table.getSelectedRow();
- Email selectedEmail = (Email) tableModel.getEntry(rowIndex);
+ rowIndex = table.convertRowIndexToModel(rowIndex);
+
+ Email selectedEmail = tableModel.getEntry(rowIndex);
+ selectedEmail = getContext().getEmailService().addToOpeningHistory(selectedEmail, getContext().getCurrentUser(), new Date());
+
getContext().setCurrentEmail(selectedEmail);
getContext().getActionEngine().runAction(new ShowDemandeAction(getContext().getMainUI().getHandler()));
}
@@ -186,25 +221,37 @@
tableModel.setRows(emails);
}
});
- getModel().addPropertyChangeListener(DemandeListUIModel.PROPERTY_SELECTED_FOLDER, new PropertyChangeListener() {
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- MailFolder folder = (MailFolder) evt.getNewValue();
- String name = folder != null ? folder.getName() : null;
- getUI().getSelectedFolder().setText(name);
- }
- });
+ Email currentEmail = getContext().getCurrentEmail();
+ if (currentEmail != null) {
+ MailFolder folder = currentEmail.getMailFolder();
+ DefaultMutableTreeNode node = nodesByFolder.get(folder);
+ navigationTree.setSelectionPath(new TreePath(node.getPath()));
+ int row = tableModel.getRowIndex(currentEmail);
+ table.setRowSelectionInterval(row, row);
+ }
+
}
- protected void createFolderTree(DefaultMutableTreeNode parent, MailFolder folder) {
+ /**
+ * Creates the tree nodes and returns a map of the nodes by folder
+ * @param parent the node parent
+ * @param folder the folder to add to the tree
+ * @return the map of the nodes by folder
+ */
+ protected Map<MailFolder, DefaultMutableTreeNode> createFolderTree(DefaultMutableTreeNode parent, MailFolder folder) {
+ Map<MailFolder, DefaultMutableTreeNode> result = new HashMap<MailFolder, DefaultMutableTreeNode>();
+
DefaultMutableTreeNode node = new FolderTreeNode(folder);
+ result.put(folder, node);
+
parent.add(node);
if (folder.isChildrenNotEmpty()) {
for (MailFolder child : folder.getChildren()) {
- createFolderTree(node, child);
+ result.putAll(createFolderTree(node, child));
}
}
+ return result;
}
@Override
@@ -217,8 +264,22 @@
if (log.isDebugEnabled()) {
log.debug("closing: " + ui);
}
+
+ JTree tree = getUI().getNavigationTree();
+ TreeModel treeModel = tree.getModel();
+ Enumeration<TreePath> paths = tree.getExpandedDescendants(new TreePath(treeModel.getRoot()));
+
+ List<MailFolder> folders = new ArrayList<MailFolder>();
+ while (paths.hasMoreElements()) {
+ TreePath path = paths.nextElement();
+ Object lastPathComponent = path.getLastPathComponent();
+ if (FolderTreeNode.class.isAssignableFrom(lastPathComponent.getClass())) {
+ folders.add(((FolderTreeNode) lastPathComponent).getMailFolder());
+ }
+ }
+ getContext().setExpandedFolders(folders);
+
clearValidators();
-
}
@Override
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.content.demande;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.MailFolder;
import org.jdesktop.beans.AbstractSerializableBean;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeTableModel.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.content.demande;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.EmailImpl;
import org.apache.commons.logging.Log;
@@ -80,9 +102,9 @@
n("faxtomail.demandeList.table.header.waitingState"),
n("faxtomail.demandeList.table.header.waitingState")));
- put(Email.PROPERTY_FAX_TO_MAIL_USER,
+ put(Email.PROPERTY_TAKEN_BY,
ColumnIdentifier.<Email>newReadOnlyId(
- Email.PROPERTY_FAX_TO_MAIL_USER,
+ Email.PROPERTY_TAKEN_BY,
n("faxtomail.demandeList.table.header.user"),
n("faxtomail.demandeList.table.header.user")));
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.css 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
BeanFilterableComboBox {
showReset: true;
bean: {model};
@@ -24,8 +45,7 @@
}
#receivedDateField {
- text: {getDateFormat().format(model.getReceptionDate())};
- editable: false;
+ text: {SimpleDateFormat.getDateTimeInstance().format(model.getReceptionDate())};
}
#senderLabel {
@@ -34,7 +54,6 @@
#senderField {
text: {model.getSenderEmailAddress()};
- editable: false;
}
#clientLabel {
@@ -121,21 +140,65 @@
text: "faxtomail.demande.message.label";
}
+#takenByLabel {
+ text: "faxtomail.demande.takenBy.label";
+}
+
+#takenByField {
+ text: {model.getTakenBy().getName()};
+}
+
+#firstOpenedByLabel {
+ text: "faxtomail.demande.firstOpenedBy.label";
+}
+
+#firstOpenedByField {
+ text: {model.getFirstOpeningUserName()};
+}
+
+#firstOpeningDateLabel {
+ text: "faxtomail.demande.firstOpeningDate.label";
+}
+
+#firstOpeningDateField {
+ text: {SimpleDateFormat.getDateTimeInstance().format(model.getFirstOpeningDate())};
+}
+
+#lastModifiedByLabel {
+ text: "faxtomail.demande.lastModifiedBy.label";
+}
+
+#lastModifiedByField {
+ text: {model.getLastModificationUserName()};
+}
+
+#lastModificationDateLabel {
+ text: "faxtomail.demande.lastModificationDate.label";
+}
+
+#lastModificationDateField {
+ text: {SimpleDateFormat.getDateTimeInstance().format(model.getLastModificationDate())};
+}
+
#backButton {
text: "faxtomail.demande.back.button.label";
+ actionIcon: cancel;
_applicationAction: {com.franciaflex.faxtomail.ui.swing.actions.ShowDemandeListAction.class};
}
#saveButton {
text: "faxtomail.demande.save.button.label";
+ actionIcon: save;
}
#transmitButton {
text: "faxtomail.demande.transmit.button.label";
+ actionIcon: transmit;
}
#printButton {
text: "faxtomail.demande.print.button.label";
+ actionIcon: print;
}
#archiveButton {
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUI.jaxx 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+<!--
+ #%L
+ FaxToMail :: UI
+ %%
+ Copyright (C) 2014 Franciaflex
+ %%
+ 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 3 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, see
+ <http://www.gnu.org/licenses/gpl-3.0.html>.
+ #L%
+ -->
<JPanel id='demandePanel' layout='{new BorderLayout()}'
implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<DemandeUIModel, DemandeUIHandler>'>
@@ -32,40 +53,35 @@
<DemandeUIModel id='model'
initializer='getContextValue(DemandeUIModel.class)'/>
- <String id='patternLayout' javaBean='"dd/MM/yyyy HH:mm:ss"'/>
-
- <SimpleDateFormat id='dateFormat' constructorParams='patternLayout'/>
-
- <Date id='date' javaBean='new Date()'/>
-
<JScrollPane id='demandeScrollPane' constraints='BorderLayout.CENTER'>
<JPanel layout='{new GridLayout(0,1)}'>
- <Table fill='both'>
-
+ <Table fill='horizontal'>
<row>
- <cell anchor='east'>
+ <cell>
<JLabel id='receivedDateLabel'/>
</cell>
- <cell weightx='1'>
- <JTextField id='receivedDateField'/>
+ <cell>
+ <JLabel id='receivedDateField'/>
</cell>
- <cell anchor='east'>
+ <cell>
<JLabel id='senderLabel'/>
</cell>
- <cell weightx='1'>
- <JTextField id='senderField'/>
+ <cell>
+ <JLabel id='senderField'/>
</cell>
- <cell anchor='east'>
+ <cell>
<JLabel id='clientLabel'/>
</cell>
<cell weightx='1'>
<JTextField id='clientField'/><!-- TODO list of clients -->
</cell>
</row>
+ </Table>
+ <Table fill='horizontal'>
<row>
<cell anchor='east'>
<JLabel id='objectLabel'/>
@@ -174,8 +190,43 @@
<JTextArea id='messageField'/>
</JScrollPane>
</cell>
- </row>
+ </row>
+ </Table>
+ <Table fill='horizontal'>
+ <row>
+ <cell>
+ <JLabel id="takenByLabel"/>
+ </cell>
+ <cell weightx='1' >
+ <JLabel id="takenByField"/>
+ </cell>
+ <cell>
+ <JLabel id="firstOpenedByLabel"/>
+ </cell>
+ <cell>
+ <JLabel id="firstOpenedByField"/>
+ </cell>
+ <cell>
+ <JLabel id="firstOpeningDateLabel"/>
+ </cell>
+ <cell weightx='1' >
+ <JLabel id="firstOpeningDateField"/>
+ </cell>
+ <cell>
+ <JLabel id="lastModifiedByLabel"/>
+ </cell>
+ <cell>
+ <JLabel id="lastModifiedByField"/>
+ </cell>
+ <cell>
+ <JLabel id="lastModificationDateLabel"/>
+ </cell>
+ <cell weightx='1'>
+ <JLabel id="lastModificationDateField"/>
+ </cell>
+ </row>
+
</Table>
<JPanel id="attachmentsPanel"
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -2,15 +2,13 @@
/*
* #%L
- * Tutti :: UI
- * $Id: EditCruiseUIHandler.java 1282 2013-10-07 14:46:55Z tchemit $
- * $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/java… $
+ * FaxToMail :: UI
* %%
- * Copyright (C) 2012 Ifremer
+ * Copyright (C) 2014 Franciaflex
* %%
* 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 3 of the
+ * published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
@@ -18,12 +16,13 @@
* 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
+ * You should have received a copy of the GNU General Public
* License along with this program. If not, see
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
*/
+
import com.franciaflex.faxtomail.persistence.entities.Company;
import com.franciaflex.faxtomail.persistence.entities.Email;
import com.franciaflex.faxtomail.persistence.entities.MailFolder;
@@ -57,18 +56,6 @@
/** Logger. */
private static final Log log = LogFactory.getLog(DemandeUIHandler.class);
-
- public static String getTitle(boolean exist) {
-
- String result;
- if (exist) {
- result = t("tutti.editCruise.title.edit.cruise");
- } else {
- result = t("tutti.editCruise.title.create.cruise");
- }
- return result;
- }
-
/**
* Persistence service.
*
@@ -83,7 +70,6 @@
DemandeUIModel model = new DemandeUIModel();
model.fromBean(getContext().getCurrentEmail());
- log.debug(model.getDemandStatus());
this.ui.setContextValue(model);
}
@@ -100,7 +86,6 @@
initBeanFilterableComboBox(ui.getStatusComboBox(), referentielService.getAllDemandStatus(), model.getDemandStatus());
initBeanFilterableComboBox(ui.getPriorityComboBox(), referentielService.getAllPriority(), model.getPriority());
initBeanFilterableComboBox(ui.getGammeComboBox(), referentielService.getAllRange(), null);
-
}
@Override
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.content.demande;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.persistence.entities.Client;
import com.franciaflex.faxtomail.persistence.entities.DemandStatus;
import com.franciaflex.faxtomail.persistence.entities.DemandType;
@@ -7,21 +29,34 @@
import com.franciaflex.faxtomail.persistence.entities.EmailImpl;
import com.franciaflex.faxtomail.persistence.entities.EtatAttente;
import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser;
+import com.franciaflex.faxtomail.persistence.entities.History;
+import com.franciaflex.faxtomail.persistence.entities.HistoryType;
import com.franciaflex.faxtomail.persistence.entities.Priority;
import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailBeanUIModel;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.nuiton.util.beans.Binder;
import org.nuiton.util.beans.BinderFactory;
+import java.util.Collection;
import java.util.Date;
+import static org.nuiton.i18n.I18n.t;
+
/**
* @author kmorin <kmorin(a)codelutin.com>
* @since x.x
*/
public class DemandeUIModel extends AbstractFaxToMailBeanUIModel<Email, DemandeUIModel> {
+ private static final Log log = LogFactory.getLog(DemandeUIModel.class);
+
protected final Email editObject = new EmailImpl();
+ protected History firstOpeningHistory;
+
+ protected History lastModificationHistory;
+
protected static Binder<DemandeUIModel, Email> toBeanBinder =
BinderFactory.newBinder(DemandeUIModel.class,
Email.class);
@@ -33,6 +68,13 @@
super(fromBeanBinder, toBeanBinder);
}
+ @Override
+ public void fromEntity(Email entity) {
+ super.fromEntity(entity);
+ firstOpeningHistory = null;
+ lastModificationHistory = null;
+ }
+
public void setSavNumber(String savNumber) {
Object oldValue = getSavNumber();
editObject.setSavNumber(savNumber);
@@ -103,14 +145,14 @@
return editObject.getEtatAttente();
}
- public void setFaxToMailUser(FaxToMailUser faxToMailUser) {
- Object oldValue = getFaxToMailUser();
- editObject.setFaxToMailUser(faxToMailUser);
- firePropertyChanged(Email.PROPERTY_FAX_TO_MAIL_USER, oldValue, faxToMailUser);
+ public void setTakenBy(FaxToMailUser faxToMailUser) {
+ Object oldValue = getTakenBy();
+ editObject.setTakenBy(faxToMailUser);
+ firePropertyChanged(Email.PROPERTY_TAKEN_BY, oldValue, faxToMailUser);
}
- public FaxToMailUser getFaxToMailUser() {
- return editObject.getFaxToMailUser();
+ public FaxToMailUser getTakenBy() {
+ return editObject.getTakenBy();
}
public Priority getPriority() {
@@ -183,6 +225,82 @@
return editObject.getProjectReference();
}
+ public void setHistory(Collection<History> history) {
+ Object oldValue = getHistory();
+ editObject.setHistory(history);
+ firePropertyChanged(Email.PROPERTY_HISTORY, oldValue, history);
+ }
+
+ public Collection<History> getHistory() {
+ return editObject.getHistory();
+ }
+
+ public void findFirstOpeningHistory() {
+ History result = null;
+ Date date = null;
+ for (History history : getHistory()) {
+ if (HistoryType.OPENING.equals(history.getType())) {
+ if (date == null || date.after(history.getModificationDate())) {
+ date = history.getModificationDate();
+ result = history;
+ }
+ }
+ }
+ firstOpeningHistory = result;
+ }
+
+ public void findLastModificationHistory() {
+ History result = null;
+ Date date = null;
+ for (History history : getHistory()) {
+ if (HistoryType.MODIFICATION.equals(history.getType())) {
+ if (date == null || date.before(history.getModificationDate())) {
+ date = history.getModificationDate();
+ result = history;
+ }
+ }
+ }
+ lastModificationHistory = result;
+ }
+
+ public History getFirstOpeningHistory() {
+ if (firstOpeningHistory == null) {
+ findFirstOpeningHistory();
+ }
+ return firstOpeningHistory;
+ }
+
+ public String getFirstOpeningUserName() {
+ return getFirstOpeningHistory().getFaxToMailUser().getName();
+ }
+
+ public Date getFirstOpeningDate() {
+ return getFirstOpeningHistory().getModificationDate();
+ }
+
+ public History getLastModificationHistory() {
+ if (lastModificationHistory == null) {
+ findLastModificationHistory();
+ }
+ return lastModificationHistory;
+ }
+
+ public String getLastModificationUserName() {
+ String result;
+ FaxToMailUser user = getLastModificationHistory().getFaxToMailUser();
+ if (user != null) {
+ result = user.getName();
+ } else {
+ result = t("faxtomail.systemUser");
+ }
+ return result;
+ }
+
+ public Date getLastModificationDate() {
+ return getLastModificationHistory().getModificationDate();
+ }
+
+
@Override
protected Email newEntity() {
return new EmailImpl();
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/FolderTreeNode.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/FolderTreeNode.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/FolderTreeNode.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,6 +1,29 @@
package com.franciaflex.faxtomail.ui.swing.content.demande;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.persistence.entities.MailFolder;
+import org.apache.commons.logging.LogFactory;
import javax.swing.tree.DefaultMutableTreeNode;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.css
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.css 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.css 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
BeanFilterableComboBox {
showReset: true;
bean: {model};
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.jaxx
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.jaxx 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUI.jaxx 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+<!--
+ #%L
+ FaxToMail :: UI
+ %%
+ Copyright (C) 2014 Franciaflex
+ %%
+ 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 3 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, see
+ <http://www.gnu.org/licenses/gpl-3.0.html>.
+ #L%
+ -->
<JPanel id='searchPanel' layout='{new BorderLayout()}'
implements='com.franciaflex.faxtomail.ui.swing.util.FaxToMailUI<SearchUIModel, SearchUIHandler>'>
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIHandler.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIHandler.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -2,15 +2,13 @@
/*
* #%L
- * Tutti :: UI
- * $Id: EditCruiseUIHandler.java 1282 2013-10-07 14:46:55Z tchemit $
- * $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/java… $
+ * FaxToMail :: UI
* %%
- * Copyright (C) 2012 Ifremer
+ * Copyright (C) 2014 Franciaflex
* %%
* 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 3 of the
+ * published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
@@ -18,7 +16,7 @@
* 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
+ * You should have received a copy of the GNU General Public
* License along with this program. If not, see
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
@@ -60,18 +58,6 @@
/** Logger. */
private static final Log log = LogFactory.getLog(SearchUIHandler.class);
-
- public static String getTitle(boolean exist) {
-
- String result;
- if (exist) {
- result = t("tutti.editCruise.title.edit.cruise");
- } else {
- result = t("tutti.editCruise.title.create.cruise");
- }
- return result;
- }
-
/**
* Persistence service.
*
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIModel.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/search/SearchUIModel.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.content.search;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
/**
* @author kmorin <kmorin(a)codelutin.com>
* @since x.x
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailBeanUIModel.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailBeanUIModel.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailBeanUIModel.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -2,15 +2,13 @@
/*
* #%L
- * Tutti :: UI
- * $Id: AbstractTuttiBeanUIModel.java 1564 2014-01-31 10:56:26Z tchemit $
- * $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/java… $
+ * FaxToMail :: UI
* %%
- * Copyright (C) 2012 Ifremer
+ * Copyright (C) 2014 Franciaflex
* %%
* 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 3 of the
+ * published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
@@ -18,7 +16,7 @@
* 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
+ * You should have received a copy of the GNU General Public
* License along with this program. If not, see
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
@@ -109,7 +107,7 @@
}
//------------------------------------------------------------------------//
- //-- TuttiEntity methods --//
+ //-- Entity methods --//
//------------------------------------------------------------------------//
// @Override
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailUIHandler.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.util;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.FaxToMailConfiguration;
import com.franciaflex.faxtomail.persistence.entities.HasLabel;
import com.franciaflex.faxtomail.services.DecoratorService;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/Cancelable.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/Cancelable.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/Cancelable.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.util;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
/**
* To cancel contract.
*
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/CloseableUI.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/CloseableUI.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/CloseableUI.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.util;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
/**
* Contract to close an ui.
*
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailExceptionHandler.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailExceptionHandler.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailExceptionHandler.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.util;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import com.franciaflex.faxtomail.ui.swing.actions.AbstractChangeScreenAction;
import com.franciaflex.faxtomail.ui.swing.actions.AbstractFaxToMailAction;
import org.apache.commons.logging.Log;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUI.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUI.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUI.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.util;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import jaxx.runtime.JAXXObject;
import org.nuiton.jaxx.application.swing.ApplicationUI;
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -2,15 +2,13 @@
/*
* #%L
- * Tutti :: UI
- * $Id: TuttiUIUtil.java 1298 2013-10-14 18:30:59Z tchemit $
- * $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/java… $
+ * FaxToMail :: UI
* %%
- * Copyright (C) 2012 Ifremer
+ * Copyright (C) 2014 Franciaflex
* %%
* 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 3 of the
+ * published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
@@ -18,7 +16,7 @@
* 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
+ * You should have received a copy of the GNU General Public
* License along with this program. If not, see
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #L%
@@ -31,6 +29,12 @@
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.application.swing.util.ApplicationUIUtil;
+import javax.swing.*;
+import javax.swing.tree.TreePath;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.List;
+
/**
* @author tchemit <chemit(a)codelutin.com>
* @since 0.1
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/RemoveablePropertyChangeListener.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/RemoveablePropertyChangeListener.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/RemoveablePropertyChangeListener.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.util;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
import java.beans.PropertyChangeListener;
/**
Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/UIMessageNotifier.java
===================================================================
--- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/UIMessageNotifier.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/UIMessageNotifier.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,5 +1,27 @@
package com.franciaflex.faxtomail.ui.swing.util;
+/*
+ * #%L
+ * FaxToMail :: UI
+ * %%
+ * Copyright (C) 2014 Franciaflex
+ * %%
+ * 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 3 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, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+
/**
* To notify somemessage in ui.
*
Modified: trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_en_GB.properties 2014-02-14 17:28:56 UTC (rev 10)
@@ -13,6 +13,8 @@
application.action.create.error=
application.error.ui.business.warning=
faxtomail.action.create.error=
+faxtomail.alert.alreadyTakenBy.message=
+faxtomail.alert.alreadyTakenBy.title=
faxtomail.archive.button.label=
faxtomail.back.button.label=
faxtomail.common.askBeforeDelete.help=
@@ -61,6 +63,8 @@
faxtomail.config.parse.error=
faxtomail.config.save.error=
faxtomail.config.title=
+faxtomail.demand.alreadyTakenBy=
+faxtomail.demande.alreadyTakenBy=
faxtomail.demande.archive.button.label=
faxtomail.demande.back.button.label=
faxtomail.demande.client.label=
@@ -69,7 +73,11 @@
faxtomail.demande.ediCodeNumber.label=
faxtomail.demande.etatAttente.label=
faxtomail.demande.finishedProducts.label=
+faxtomail.demande.firstOpenedBy.label=
+faxtomail.demande.firstOpeningDate.label=
faxtomail.demande.gamme.label=
+faxtomail.demande.lastModificationDate.label=
+faxtomail.demande.lastModifiedBy.label=
faxtomail.demande.message.label=
faxtomail.demande.object.label=
faxtomail.demande.print.button.label=
@@ -82,6 +90,7 @@
faxtomail.demande.save.button.label=
faxtomail.demande.sender.label=
faxtomail.demande.status.label=
+faxtomail.demande.takenBy.label=
faxtomail.demande.tcc.label=
faxtomail.demande.title=
faxtomail.demande.transmit.button.label=
@@ -159,6 +168,7 @@
faxtomail.search.sender.label=
faxtomail.search.status.label=
faxtomail.search.title=
+faxtomail.systemUser=
faxtomail.transmit.button.label=
swing.error.cannot.mail=
swing.error.cannot.open.link=
Modified: trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties 2014-02-14 17:28:56 UTC (rev 10)
@@ -12,62 +12,23 @@
Voir=
application.action.create.error=
application.error.ui.business.warning=
-faxtomail.action.create.error=
-faxtomail.common.askBeforeDelete.help=
-faxtomail.common.askCancelEditBeforeLeaving.help=
-faxtomail.common.askCancelEditBeforeLeaving.title=
-faxtomail.common.askOverwriteFile.help=
-faxtomail.common.askOverwriteFile.message=
-faxtomail.common.askOverwriteFile.title=
-faxtomail.common.askSaveBeforeLeaving.help=
-faxtomail.common.askSaveBeforeLeaving.title=
-faxtomail.common.datefield.tip=
-faxtomail.config.action.reload.actions=
-faxtomail.config.action.reload.application=
-faxtomail.config.action.reload.ui=
+faxtomail.alert.alreadyTakenBy.message=Le document est déjà attribué à l'utilisateur %s.
+faxtomail.alert.alreadyTakenBy.title=Document déjà attribué
faxtomail.config.application=
-faxtomail.config.category.applications=
-faxtomail.config.category.applications.description=
-faxtomail.config.category.technical=
-faxtomail.config.category.technical.description=
-faxtomail.config.category.ui=
-faxtomail.config.category.ui.description=
-faxtomail.config.option.basedir.shortLabel=
-faxtomail.config.option.csv.separator.shortLabel=
-faxtomail.config.option.help.directory.description=
-faxtomail.config.option.help.directory.shortLabel=
-faxtomail.config.option.i18n.directory.description=
-faxtomail.config.option.i18n.directory.shortLabel=
-faxtomail.config.option.i18n.locale.description=
-faxtomail.config.option.launch.mode.description=
-faxtomail.config.option.site.url.shortLabel=
-faxtomail.config.option.startActionFile.description=
-faxtomail.config.option.tmp.directory.shortLabel=
-faxtomail.config.option.ui.autoPopupNumberEditor.description=
-faxtomail.config.option.ui.color.alternateRow.description=
-faxtomail.config.option.ui.color.alternateRow.shortLabel=
-faxtomail.config.option.ui.color.blockingLayer.description=
-faxtomail.config.option.ui.color.blockingLayer.shortLabel=
-faxtomail.config.option.ui.color.selectedRow.description=
-faxtomail.config.option.ui.color.selectedRow.shortLabel=
-faxtomail.config.option.ui.config.file.description=
-faxtomail.config.option.ui.config.file.shortLabel=
-faxtomail.config.option.ui.dateFormat.description=
-faxtomail.config.option.ui.dateFormat.shortLabel=
-faxtomail.config.option.ui.shortcut.closePopup.description=
-faxtomail.config.option.ui.showNumberEditorButton.description=
-faxtomail.config.parse.error=
-faxtomail.config.save.error=
faxtomail.config.title=
faxtomail.demande.archive.button.label=Archiver
-faxtomail.demande.back.button.label=Retour
+faxtomail.demande.back.button.label=Annuler
faxtomail.demande.client.label=Client
faxtomail.demande.demandeNumber.label=N° Devis/Cde
faxtomail.demande.docType.label=Type
faxtomail.demande.ediCodeNumber.label=Retour EDI
faxtomail.demande.etatAttente.label=État attente
faxtomail.demande.finishedProducts.label=Produits finis
+faxtomail.demande.firstOpenedBy.label=Première ouverture par
+faxtomail.demande.firstOpeningDate.label=le
faxtomail.demande.gamme.label=Gamme
+faxtomail.demande.lastModificationDate.label=le
+faxtomail.demande.lastModifiedBy.label=Dernière modification par
faxtomail.demande.message.label=Message
faxtomail.demande.object.label=Objet
faxtomail.demande.print.button.label=Imprimer
@@ -78,7 +39,7 @@
faxtomail.demande.save.button.label=Enregistrer
faxtomail.demande.sender.label=Émetteur
faxtomail.demande.status.label=Statut
-faxtomail.demande.title=Demande
+faxtomail.demande.takenBy.label=Pris par
faxtomail.demande.transmit.button.label=Transmettre
faxtomail.demandeList.action.attachment=Ajouter une pièce-jointe
faxtomail.demandeList.action.attachment.mnemonic=A
@@ -105,12 +66,6 @@
faxtomail.demandeList.table.header.user=Pris pas
faxtomail.demandeList.table.header.waitingState=État attente
faxtomail.demandeList.title=Gestion des fax
-faxtomail.error.delete.startActionFile=
-faxtomail.error.errorpane.htmlmessage=
-faxtomail.error.read.startActionFile=
-faxtomail.error.ui.business.error=
-faxtomail.error.ui.business.warning=
-faxtomail.error.ui.other.error=
faxtomail.i18n.deleteCache.error=
faxtomail.i18n.mkDir.error=
faxtomail.main.action.configuration=Configuration
@@ -130,13 +85,9 @@
faxtomail.main.menu.file=Fichier
faxtomail.main.menu.file.mnemonic=
faxtomail.main.menu.file.tip=Menu fichier
-faxtomail.main.title.action=
faxtomail.main.title.application=FaxToMail
faxtomail.main.title.applicationName=FaxToMail
faxtomail.main.title.nodb=
-faxtomail.message.action.running=
-faxtomail.property.get.error=
-faxtomail.property.set.error=
faxtomail.search.between2ndPart.label=et le
faxtomail.search.button.label=Rechercher
faxtomail.search.chantier.label=Chantier
@@ -152,10 +103,4 @@
faxtomail.search.sender.label=Émetteur
faxtomail.search.status.label=Statut
faxtomail.search.title=Recherche
-swing.error.cannot.mail=
-swing.error.cannot.open.link=
-swing.error.desktop.browse.not.supported=
-swing.error.desktop.mail.not.supported=
-swing.error.desktop.not.supported=
-tutti.editCruise.title.create.cruise=
-tutti.editCruise.title.edit.cruise=
+faxtomail.systemUser=Système
Modified: trunk/faxtomail-ui-swing/src/main/resources/log4j.properties
===================================================================
--- trunk/faxtomail-ui-swing/src/main/resources/log4j.properties 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-swing/src/main/resources/log4j.properties 2014-02-14 17:28:56 UTC (rev 10)
@@ -1,3 +1,24 @@
+###
+# #%L
+# FaxToMail :: UI
+# %%
+# Copyright (C) 2014 Franciaflex
+# %%
+# 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 3 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, see
+# <http://www.gnu.org/licenses/gpl-3.0.html>.
+# #L%
+###
log4j.rootCategory=WARN, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
@@ -5,7 +26,7 @@
log4j.appender.console.layout.ConversionPattern=%d{yyyy/MM/dd hh:mm:ss} %5p (%F:%L) %M %m%n
# global level
-log4j.logger.com.franciaflex.faxtomail=TRACE
+log4j.logger.com.franciaflex.faxtomail=DEBUG
### persistence level
# log4j.logger.org.nuiton.topia=TRACE
Modified: trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java
===================================================================
--- trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ConfigurationAction.java 2014-02-14 17:28:56 UTC (rev 10)
@@ -163,7 +163,7 @@
result.put(Email.PROPERTY_CLIENT, "Client");
result.put(Email.PROPERTY_DEMAND_STATUS, "Statut");
result.put(Email.PROPERTY_DEMAND_TYPE, "Type");
- result.put(Email.PROPERTY_FAX_TO_MAIL_USER, "Pris par");
+ result.put(Email.PROPERTY_TAKEN_BY, "Pris par");
result.put(Email.PROPERTY_ETAT_ATTENTE, "État attente");
return result;
}
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-02-12 17:16:05 UTC (rev 9)
+++ trunk/pom.xml 2014-02-14 17:28:56 UTC (rev 10)
@@ -92,7 +92,7 @@
<hibernateVersion>4.2.8.Final</hibernateVersion>
<h2Version>1.3.174</h2Version>
- <jaxxVersion>2.8</jaxxVersion>
+ <jaxxVersion>2.8.2-SNAPSHOT</jaxxVersion>
<swingXVersion>1.6.4</swingXVersion>
<xworkVersion>2.3.15.1</xworkVersion>
@@ -117,7 +117,7 @@
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<!-- Last JRE version to use -->
- <jreVersion>1.7.45</jreVersion>
+ <jreVersion>1.7.51</jreVersion>
</properties>
1
0