From 625f45c465b17f3ff7d07eba5011b640de73faa8 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 14:22:59 +0100 Subject: [PATCH 01/40] GenerationService : move to service package --- .../pipeline/PipeLineGeneratorImpl.java | 2 +- .../params/pipeline/PipelineGenerator.java | 2 +- .../eno/{ => service}/GenerationService.java | 18 +++++++++-- .../ParameterizedGenerationService.java | 31 ++++++++++++++++--- .../fr/insee/eno/main/DummyTestDDI2FO.java | 2 +- .../fr/insee/eno/main/DummyTestDDI2JS.java | 2 +- .../fr/insee/eno/main/DummyTestDDI2ODT.java | 2 +- .../fr/insee/eno/main/DummyTestDDI2PDF.java | 2 +- .../eno/main/DummyTestDDI2PDFExamples.java | 2 +- .../insee/eno/main/DummyTestDDI2XForms.java | 2 +- .../insee/eno/main/DummyTestDDI32ToDDI33.java | 2 +- .../eno/main/DummyTestPoguesXML2DDI.java | 2 +- .../TestParameterizedGenerationServiceFR.java | 2 +- .../TestParameterizedGenerationServiceJS.java | 2 +- ...TestParameterizedGenerationServicePDF.java | 2 +- .../java/fr/insee/eno/test/TestDDIToFO.java | 2 +- .../java/fr/insee/eno/test/TestDDIToJS.java | 2 +- .../java/fr/insee/eno/test/TestDDIToODT.java | 2 +- .../fr/insee/eno/test/TestDDIToXForm.java | 2 +- .../fr/insee/eno/test/TestPoguesXMLToDDI.java | 2 +- 20 files changed, 60 insertions(+), 25 deletions(-) rename src/main/java/fr/insee/eno/{ => service}/GenerationService.java (94%) rename src/main/java/fr/insee/eno/{ => service}/ParameterizedGenerationService.java (88%) diff --git a/src/main/java/fr/insee/eno/params/pipeline/PipeLineGeneratorImpl.java b/src/main/java/fr/insee/eno/params/pipeline/PipeLineGeneratorImpl.java index c1b375891..98ba7ef6e 100644 --- a/src/main/java/fr/insee/eno/params/pipeline/PipeLineGeneratorImpl.java +++ b/src/main/java/fr/insee/eno/params/pipeline/PipeLineGeneratorImpl.java @@ -7,7 +7,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2FRGenerator; import fr.insee.eno.generation.DDI2JSGenerator; import fr.insee.eno.generation.DDI2ODTGenerator; @@ -51,6 +50,7 @@ import fr.insee.eno.preprocessing.DDITitlingPreprocessor; import fr.insee.eno.preprocessing.PoguesXMLPreprocessorGoToTreatment; import fr.insee.eno.preprocessing.Preprocessor; +import fr.insee.eno.service.GenerationService; public class PipeLineGeneratorImpl implements PipelineGenerator { diff --git a/src/main/java/fr/insee/eno/params/pipeline/PipelineGenerator.java b/src/main/java/fr/insee/eno/params/pipeline/PipelineGenerator.java index 2d6707b0f..da4a6e620 100644 --- a/src/main/java/fr/insee/eno/params/pipeline/PipelineGenerator.java +++ b/src/main/java/fr/insee/eno/params/pipeline/PipelineGenerator.java @@ -2,7 +2,6 @@ import java.util.List; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.Generator; import fr.insee.eno.parameters.InFormat; import fr.insee.eno.parameters.OutFormat; @@ -11,6 +10,7 @@ import fr.insee.eno.parameters.PreProcessing; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.preprocessing.Preprocessor; +import fr.insee.eno.service.GenerationService; public interface PipelineGenerator { diff --git a/src/main/java/fr/insee/eno/GenerationService.java b/src/main/java/fr/insee/eno/service/GenerationService.java similarity index 94% rename from src/main/java/fr/insee/eno/GenerationService.java rename to src/main/java/fr/insee/eno/service/GenerationService.java index 03e1a65aa..62774ea06 100644 --- a/src/main/java/fr/insee/eno/GenerationService.java +++ b/src/main/java/fr/insee/eno/service/GenerationService.java @@ -1,4 +1,4 @@ -package fr.insee.eno; +package fr.insee.eno.service; import java.io.ByteArrayOutputStream; import java.io.File; @@ -14,6 +14,7 @@ import com.google.common.io.Files; import com.google.inject.Inject; +import fr.insee.eno.Constants; import fr.insee.eno.generation.Generator; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.preprocessing.Preprocessor; @@ -34,6 +35,8 @@ public class GenerationService { private byte[] metadata; private byte[] specificTreatment; private byte[] mapping; + + private boolean cleaningFolder; @Inject public GenerationService(final Preprocessor[] preprocessors, final Generator generator, @@ -41,6 +44,7 @@ public GenerationService(final Preprocessor[] preprocessors, final Generator gen this.preprocessors = preprocessors; this.generator = generator; this.postprocessors = postprocessors; + this.cleaningFolder = true; } @Inject @@ -49,6 +53,7 @@ public GenerationService(final Preprocessor preprocessor, final Generator genera this.preprocessors = new Preprocessor[] { preprocessor }; this.generator = generator; this.postprocessors = postprocessors; + this.cleaningFolder = true; } @Inject @@ -57,6 +62,7 @@ public GenerationService(final Preprocessor preprocessor, final Generator genera this.preprocessors = new Preprocessor[] { preprocessor }; this.generator = generator; this.postprocessors = new Postprocessor[] { postprocessor }; + this.cleaningFolder = true; } /** @@ -75,7 +81,9 @@ public File generateQuestionnaire(File inputFile, String surveyName) throws Exce String tempFolder = System.getProperty("java.io.tmpdir") + "/" + surveyName; logger.debug("Temp folder: " + tempFolder); - cleanTempFolder(surveyName); + if(cleaningFolder) { + cleanTempFolder(surveyName); + } File preprocessResultFileName = null; preprocessResultFileName = this.preprocessors[0].process(inputFile, parameters, surveyName,generator.in2out()); @@ -140,6 +148,12 @@ public byte[] getSpecificTreatment() { public byte[] getMapping() { return mapping; } + + public void setCleaningFolder(boolean cleaning) { + this.cleaningFolder = cleaning; + } + + /** * Clean the temp dir if it exists diff --git a/src/main/java/fr/insee/eno/ParameterizedGenerationService.java b/src/main/java/fr/insee/eno/service/ParameterizedGenerationService.java similarity index 88% rename from src/main/java/fr/insee/eno/ParameterizedGenerationService.java rename to src/main/java/fr/insee/eno/service/ParameterizedGenerationService.java index f4b52639e..1bf4ba8d3 100644 --- a/src/main/java/fr/insee/eno/ParameterizedGenerationService.java +++ b/src/main/java/fr/insee/eno/service/ParameterizedGenerationService.java @@ -1,4 +1,4 @@ -package fr.insee.eno; +package fr.insee.eno.service; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -30,13 +30,31 @@ public class ParameterizedGenerationService { private static final Logger LOGGER = LoggerFactory.getLogger(ParameterizedGenerationService.class); - private PipelineGenerator pipelineGenerator = new PipeLineGeneratorImpl(); + private PipelineGenerator pipelineGenerator; - private ValorizatorParameters valorizatorParameters = new ValorizatorParametersImpl(); + private ValorizatorParameters valorizatorParameters; - private Validator validator = new ValidatorImpl(); + private Validator validator; - private SchemaValidator schemaValidator = new SchemaValidatorImpl(); + private SchemaValidator schemaValidator ; + + private boolean cleaningFolder; + + public ParameterizedGenerationService() { + this.pipelineGenerator = new PipeLineGeneratorImpl(); + this.valorizatorParameters = new ValorizatorParametersImpl(); + this.validator = new ValidatorImpl(); + this.schemaValidator = new SchemaValidatorImpl(); + this.cleaningFolder=true; + } + + public ParameterizedGenerationService(boolean cleaningFolder) { + this.pipelineGenerator = new PipeLineGeneratorImpl(); + this.valorizatorParameters = new ValorizatorParametersImpl(); + this.validator = new ValidatorImpl(); + this.schemaValidator = new SchemaValidatorImpl(); + this.cleaningFolder=cleaningFolder; + } /** * It generates File using transformations defined in ENOParameters @@ -55,6 +73,8 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr ValidationMessage valid = validator.validate(params); if(valid.isValid()) { GenerationService generationService = pipelineGenerator.setPipeLine(pipeline); + generationService.setCleaningFolder(cleaningFolder); + ByteArrayOutputStream paramsFinal = valorizatorParameters.mergeParameters(params); LOGGER.info("Setting paramaters to the pipeline."); generationService.setParameters(paramsFinal); @@ -111,6 +131,7 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea LOGGER.info(valid.getMessage()); Pipeline pipeline = enoParameters.getPipeline(); GenerationService generationService = pipelineGenerator.setPipeLine(pipeline); + generationService.setCleaningFolder(cleaningFolder); ByteArrayOutputStream paramsFinal = valorizatorParameters.mergeParameters(enoParameters); LOGGER.info("Setting paramaters to the pipeline."); generationService.setParameters(paramsFinal); diff --git a/src/test/java/fr/insee/eno/main/DummyTestDDI2FO.java b/src/test/java/fr/insee/eno/main/DummyTestDDI2FO.java index a112b6086..0f26af308 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestDDI2FO.java +++ b/src/test/java/fr/insee/eno/main/DummyTestDDI2FO.java @@ -4,7 +4,6 @@ import org.junit.Test; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2PDFGenerator; import fr.insee.eno.postprocessing.PDFEditStructurePagesPostprocessor; import fr.insee.eno.postprocessing.PDFInsertAccompanyingMailsPostprocessor; @@ -15,6 +14,7 @@ import fr.insee.eno.postprocessing.PDFTableColumnPostprocessorFake; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class DummyTestDDI2FO { diff --git a/src/test/java/fr/insee/eno/main/DummyTestDDI2JS.java b/src/test/java/fr/insee/eno/main/DummyTestDDI2JS.java index 1b0b6055d..f3cb0d416 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestDDI2JS.java +++ b/src/test/java/fr/insee/eno/main/DummyTestDDI2JS.java @@ -4,7 +4,6 @@ import org.junit.Test; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2JSGenerator; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.postprocessing.js.JSExternalizeVariablesPostprocessor; @@ -12,6 +11,7 @@ import fr.insee.eno.postprocessing.js.JSSortComponentsPostprocessor; import fr.insee.eno.postprocessing.js.JSVTLParserPostprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class DummyTestDDI2JS { diff --git a/src/test/java/fr/insee/eno/main/DummyTestDDI2ODT.java b/src/test/java/fr/insee/eno/main/DummyTestDDI2ODT.java index 2273c6ba0..4cd6abf74 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestDDI2ODT.java +++ b/src/test/java/fr/insee/eno/main/DummyTestDDI2ODT.java @@ -4,10 +4,10 @@ import org.junit.Test; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2ODTGenerator; import fr.insee.eno.postprocessing.NoopPostprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class DummyTestDDI2ODT { diff --git a/src/test/java/fr/insee/eno/main/DummyTestDDI2PDF.java b/src/test/java/fr/insee/eno/main/DummyTestDDI2PDF.java index 9045fd065..310f8747c 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestDDI2PDF.java +++ b/src/test/java/fr/insee/eno/main/DummyTestDDI2PDF.java @@ -21,7 +21,6 @@ import org.apache.fop.apps.MimeConstants; import org.junit.Test; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2PDFGenerator; import fr.insee.eno.postprocessing.PDFEditStructurePagesPostprocessor; import fr.insee.eno.postprocessing.PDFInsertAccompanyingMailsPostprocessor; @@ -32,6 +31,7 @@ import fr.insee.eno.postprocessing.PDFTableColumnPostprocessorFake; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class DummyTestDDI2PDF { diff --git a/src/test/java/fr/insee/eno/main/DummyTestDDI2PDFExamples.java b/src/test/java/fr/insee/eno/main/DummyTestDDI2PDFExamples.java index b02be34fd..d01e7daf0 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestDDI2PDFExamples.java +++ b/src/test/java/fr/insee/eno/main/DummyTestDDI2PDFExamples.java @@ -21,7 +21,6 @@ import org.apache.fop.apps.MimeConstants; import org.junit.Test; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2PDFGenerator; import fr.insee.eno.postprocessing.PDFEditStructurePagesPostprocessor; import fr.insee.eno.postprocessing.PDFInsertAccompanyingMailsPostprocessor; @@ -32,6 +31,7 @@ import fr.insee.eno.postprocessing.PDFTableColumnPostprocessorFake; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class DummyTestDDI2PDFExamples { diff --git a/src/test/java/fr/insee/eno/main/DummyTestDDI2XForms.java b/src/test/java/fr/insee/eno/main/DummyTestDDI2XForms.java index b964aaa2b..328eae383 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestDDI2XForms.java +++ b/src/test/java/fr/insee/eno/main/DummyTestDDI2XForms.java @@ -4,10 +4,10 @@ import org.junit.Test; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2FRGenerator; import fr.insee.eno.postprocessing.NoopPostprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class DummyTestDDI2XForms { diff --git a/src/test/java/fr/insee/eno/main/DummyTestDDI32ToDDI33.java b/src/test/java/fr/insee/eno/main/DummyTestDDI32ToDDI33.java index c2b858216..fec301c2d 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestDDI32ToDDI33.java +++ b/src/test/java/fr/insee/eno/main/DummyTestDDI32ToDDI33.java @@ -2,10 +2,10 @@ import java.io.File; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.IdentityGenerator; import fr.insee.eno.postprocessing.NoopPostprocessor; import fr.insee.eno.preprocessing.DDI32ToDDI33Preprocessor; +import fr.insee.eno.service.GenerationService; public class DummyTestDDI32ToDDI33 { diff --git a/src/test/java/fr/insee/eno/main/DummyTestPoguesXML2DDI.java b/src/test/java/fr/insee/eno/main/DummyTestPoguesXML2DDI.java index b3ba5a72b..d0d78ec45 100644 --- a/src/test/java/fr/insee/eno/main/DummyTestPoguesXML2DDI.java +++ b/src/test/java/fr/insee/eno/main/DummyTestPoguesXML2DDI.java @@ -4,10 +4,10 @@ import org.junit.Test; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.PoguesXML2DDIGenerator; import fr.insee.eno.postprocessing.DDIPostprocessor; import fr.insee.eno.preprocessing.PoguesXMLPreprocessorGoToTreatment; +import fr.insee.eno.service.GenerationService; public class DummyTestPoguesXML2DDI { diff --git a/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceFR.java b/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceFR.java index 18b515ce8..4dc779d23 100644 --- a/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceFR.java +++ b/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceFR.java @@ -6,7 +6,7 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.ParameterizedGenerationService; +import fr.insee.eno.service.ParameterizedGenerationService; import fr.insee.eno.test.XMLDiff; public class TestParameterizedGenerationServiceFR { diff --git a/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceJS.java b/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceJS.java index d0362487d..6138c574c 100644 --- a/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceJS.java +++ b/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServiceJS.java @@ -6,7 +6,7 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.ParameterizedGenerationService; +import fr.insee.eno.service.ParameterizedGenerationService; import fr.insee.eno.test.XMLDiff; public class TestParameterizedGenerationServiceJS { diff --git a/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServicePDF.java b/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServicePDF.java index 794651041..ce1e42778 100644 --- a/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServicePDF.java +++ b/src/test/java/fr/insee/eno/params/generation/TestParameterizedGenerationServicePDF.java @@ -6,7 +6,7 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.ParameterizedGenerationService; +import fr.insee.eno.service.ParameterizedGenerationService; import fr.insee.eno.test.XMLDiff; public class TestParameterizedGenerationServicePDF { diff --git a/src/test/java/fr/insee/eno/test/TestDDIToFO.java b/src/test/java/fr/insee/eno/test/TestDDIToFO.java index 6a7e7fa86..42adaa143 100644 --- a/src/test/java/fr/insee/eno/test/TestDDIToFO.java +++ b/src/test/java/fr/insee/eno/test/TestDDIToFO.java @@ -7,7 +7,6 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2PDFGenerator; import fr.insee.eno.postprocessing.PDFEditStructurePagesPostprocessor; import fr.insee.eno.postprocessing.PDFInsertAccompanyingMailsPostprocessor; @@ -18,6 +17,7 @@ import fr.insee.eno.postprocessing.PDFTableColumnPostprocessorFake; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class TestDDIToFO { diff --git a/src/test/java/fr/insee/eno/test/TestDDIToJS.java b/src/test/java/fr/insee/eno/test/TestDDIToJS.java index 4c01d009f..b0952b4ac 100644 --- a/src/test/java/fr/insee/eno/test/TestDDIToJS.java +++ b/src/test/java/fr/insee/eno/test/TestDDIToJS.java @@ -7,7 +7,6 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2JSGenerator; import fr.insee.eno.postprocessing.Postprocessor; import fr.insee.eno.postprocessing.js.JSExternalizeVariablesPostprocessor; @@ -15,6 +14,7 @@ import fr.insee.eno.postprocessing.js.JSSortComponentsPostprocessor; import fr.insee.eno.postprocessing.js.JSVTLParserPostprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class TestDDIToJS { diff --git a/src/test/java/fr/insee/eno/test/TestDDIToODT.java b/src/test/java/fr/insee/eno/test/TestDDIToODT.java index b5666d489..b31bafbb1 100644 --- a/src/test/java/fr/insee/eno/test/TestDDIToODT.java +++ b/src/test/java/fr/insee/eno/test/TestDDIToODT.java @@ -7,10 +7,10 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2ODTGenerator; import fr.insee.eno.postprocessing.NoopPostprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class TestDDIToODT { diff --git a/src/test/java/fr/insee/eno/test/TestDDIToXForm.java b/src/test/java/fr/insee/eno/test/TestDDIToXForm.java index 2e5bc34af..d99426fc7 100644 --- a/src/test/java/fr/insee/eno/test/TestDDIToXForm.java +++ b/src/test/java/fr/insee/eno/test/TestDDIToXForm.java @@ -7,10 +7,10 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.DDI2FRGenerator; import fr.insee.eno.postprocessing.fr.FRBrowsingPostprocessor; import fr.insee.eno.preprocessing.DDIPreprocessor; +import fr.insee.eno.service.GenerationService; public class TestDDIToXForm { diff --git a/src/test/java/fr/insee/eno/test/TestPoguesXMLToDDI.java b/src/test/java/fr/insee/eno/test/TestPoguesXMLToDDI.java index fff035924..5f7588ac6 100644 --- a/src/test/java/fr/insee/eno/test/TestPoguesXMLToDDI.java +++ b/src/test/java/fr/insee/eno/test/TestPoguesXMLToDDI.java @@ -7,10 +7,10 @@ import org.junit.Test; import org.xmlunit.diff.Diff; -import fr.insee.eno.GenerationService; import fr.insee.eno.generation.PoguesXML2DDIGenerator; import fr.insee.eno.postprocessing.ddi.DDIMarkdown2XhtmlPostprocessor; import fr.insee.eno.preprocessing.PoguesXMLPreprocessorGoToTreatment; +import fr.insee.eno.service.GenerationService; public class TestPoguesXMLToDDI { From cc3d4f935010d76473b68ecfd29dce0ebb7ff625 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 14:23:47 +0100 Subject: [PATCH 02/40] FolderCleaner : add special cleaner --- .../fr/insee/eno/utils/FolderCleaner.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/main/java/fr/insee/eno/utils/FolderCleaner.java b/src/main/java/fr/insee/eno/utils/FolderCleaner.java index 9bfedf7c1..53e16ecb6 100644 --- a/src/main/java/fr/insee/eno/utils/FolderCleaner.java +++ b/src/main/java/fr/insee/eno/utils/FolderCleaner.java @@ -1,6 +1,7 @@ package fr.insee.eno.utils; import java.io.File; +import java.io.FilenameFilter; import java.io.IOException; import java.nio.file.Files; @@ -63,4 +64,27 @@ public void cleanOneFolder(File folder) throws IOException { FileUtils.cleanDirectory(folder); } } + + /** + * Generic method to clean one folder + * + * @param folder + * : the folder to be cleaned + * @throws IOException + * : FileNotfound / NoAccess mainly + */ + public void specialCleaningFiles(File folder, String fileName) throws IOException { + logger.debug("Special Cleaning : " + folder+" (deleting files generated with '"+fileName+"' ddi model)"); + if (folder.exists() && Files.isDirectory(folder.toPath())) { + File[] matchCleaningInput = folder.listFiles(new FilenameFilter() { + @Override + public boolean accept(File dir, String name) { + return name.startsWith(fileName); + } + }); + for(File file : matchCleaningInput) { + Files.delete(file.toPath()); + } + } + } } From ec5fe4234f7bc3eecfe3e9628afa2508ea4cbcd4 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 14:24:25 +0100 Subject: [PATCH 03/40] Dereferencing : add condition on generated file --- .../insee/eno/preprocessing/DDIDereferencingPreprocessor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/fr/insee/eno/preprocessing/DDIDereferencingPreprocessor.java b/src/main/java/fr/insee/eno/preprocessing/DDIDereferencingPreprocessor.java index cd6ed0211..1e30d9c08 100644 --- a/src/main/java/fr/insee/eno/preprocessing/DDIDereferencingPreprocessor.java +++ b/src/main/java/fr/insee/eno/preprocessing/DDIDereferencingPreprocessor.java @@ -53,7 +53,7 @@ public File process(File inputFile, byte[] parametersFile, String survey, String @Override public boolean accept(File dir, String name) { - return !name.startsWith("null"); + return !name.startsWith("null") && name.endsWith(".tmp"); } }); From ed78f7e89f198f1b701b91495bff546d7c4d2fb1 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 14:26:17 +0100 Subject: [PATCH 04/40] DDI : add splitting pre-processing --- src/main/java/fr/insee/eno/Constants.java | 1 + .../DDISplittingPreprocessor.java | 83 ++++++++++++++++ .../resources/xslt/util/ddi/splitting.xsl | 99 +++++++++++++++++++ 3 files changed, 183 insertions(+) create mode 100644 src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java create mode 100644 src/main/resources/xslt/util/ddi/splitting.xsl diff --git a/src/main/java/fr/insee/eno/Constants.java b/src/main/java/fr/insee/eno/Constants.java index 0f7bd37c9..8d64b26be 100644 --- a/src/main/java/fr/insee/eno/Constants.java +++ b/src/main/java/fr/insee/eno/Constants.java @@ -62,6 +62,7 @@ private Constants() { public static final String DDI_DEREFERENCING_XSL = PRE_PROCESSING_FOLDER + "/ddi/dereferencing.xsl"; public static final String PARAMETERS_FILE = "/" + PARAMETERS_XML; + public static final String UTIL_DDI_SPLITTING_XSL = UTIL_FOLDER_PATH + "/ddi/splitting.xsl"; public static final String UTIL_DDI_DEREFERENCING_XSL = UTIL_FOLDER_PATH + "/ddi/dereferencing.xsl"; public static final String UTIL_DDI_TITLING_XSL = PRE_PROCESSING_FOLDER + "/ddi/titling.xsl"; public static final String UTIL_DDI_MAPPING_XSL = PRE_PROCESSING_FOLDER + "/ddi/mapping.xsl"; diff --git a/src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java b/src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java new file mode 100644 index 000000000..e802baaab --- /dev/null +++ b/src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java @@ -0,0 +1,83 @@ +package fr.insee.eno.preprocessing; + +import java.io.File; +import java.io.FilenameFilter; +import java.io.InputStream; +import java.io.OutputStream; +import java.util.ArrayList; +import java.util.List; + +import org.apache.commons.io.FileUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import fr.insee.eno.Constants; +import fr.insee.eno.exception.EnoGenerationException; +import fr.insee.eno.transform.xsl.XslTransformation; + +/** + * A DDI specific preprocessor. + */ +public class DDISplittingPreprocessor { + + private static final Logger logger = LoggerFactory.getLogger(DDISplittingPreprocessor.class); + + private XslTransformation saxonService = new XslTransformation(); + + public List splitDDI(File inputFile, String survey) throws Exception { + logger.info("DDI splitting preprocessing Target : START"); + + String sUB_TEMP_FOLDER = Constants.sUB_TEMP_FOLDER(survey); + // ----- Dereferencing + logger.debug("Dereferencing : -Input : " + inputFile + " -Output : " + Constants.tEMP_NULL_TMP(sUB_TEMP_FOLDER) + + " -Stylesheet : " + Constants.UTIL_DDI_SPLITTING_XSL + " -Parameters : " + sUB_TEMP_FOLDER); + + InputStream isDDI_DEREFERENCING_XSL = Constants.getInputStreamFromPath(Constants.UTIL_DDI_SPLITTING_XSL); + InputStream isInputFile = FileUtils.openInputStream(inputFile); + OutputStream osTEMP_NULL_TMP = FileUtils.openOutputStream(Constants.tEMP_NULL_TMP(sUB_TEMP_FOLDER)); + + try { + saxonService.transformDereferencing(isInputFile, isDDI_DEREFERENCING_XSL, osTEMP_NULL_TMP, + Constants.sUB_TEMP_FOLDER_FILE(survey)); + }catch(Exception e) { + throw new EnoGenerationException("An error was occured during the " + toString() + " transformation. "+e.getMessage()); + } + + isInputFile.close(); + isDDI_DEREFERENCING_XSL.close(); + osTEMP_NULL_TMP.close(); + // ----- Cleaning + logger.debug("Cleaning target"); + File f = Constants.sUB_TEMP_FOLDER_FILE(survey); + File[] matchCleaningInput = f.listFiles(new FilenameFilter() { + + @Override + public boolean accept(File dir, String name) { + return !name.startsWith("null"); + } + }); + + List outputFiles = new ArrayList(); + String cleaningInput = null; + + logger.debug("Searching matching files in : " + sUB_TEMP_FOLDER); + for (File file : matchCleaningInput) { + if(!file.isDirectory()) { + logger.debug("Found : " + file.getAbsolutePath()); + outputFiles.add(file); + } + } + if(outputFiles.size()==0) { + throw new EnoGenerationException("DDI Splitting produced no file."); + } + + logger.debug("DDI splitting preprocessing : END"); + return outputFiles; + } + + public String toString() { + return "DDI splitting preprocessor"; + } + + +} diff --git a/src/main/resources/xslt/util/ddi/splitting.xsl b/src/main/resources/xslt/util/ddi/splitting.xsl new file mode 100644 index 000000000..62bb047c4 --- /dev/null +++ b/src/main/resources/xslt/util/ddi/splitting.xsl @@ -0,0 +1,99 @@ + + + + + + + + The output folder in which the dereferenced files (one for each main sequence) are generated. + + + + + + + + Root template + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Default template : identity template. + + + + + + + + + + Not to dereference templates. + + + + + + + + + + + + + + From 1d228b2ba8cbd3c139f066fdc5469dccea6da2a1 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 14:37:59 +0100 Subject: [PATCH 05/40] Create FileArchiver.java --- .../java/fr/insee/eno/utils/FileArchiver.java | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/main/java/fr/insee/eno/utils/FileArchiver.java diff --git a/src/main/java/fr/insee/eno/utils/FileArchiver.java b/src/main/java/fr/insee/eno/utils/FileArchiver.java new file mode 100644 index 000000000..aab68fc34 --- /dev/null +++ b/src/main/java/fr/insee/eno/utils/FileArchiver.java @@ -0,0 +1,41 @@ +package fr.insee.eno.utils; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +import org.apache.commons.io.IOUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class FileArchiver { + + private static final Logger LOGGER = LoggerFactory.getLogger(FileArchiver.class); + + /** + * Add a file into Zip archive. + * + * @param filePath + * @param zipStream + * @throws FileNotFoundException + * @throws IOException + */ + public static void writeToZipFile(String filePath, ZipOutputStream zipStream) + throws FileNotFoundException, IOException { + LOGGER.info("Writing file : '"+filePath+ "' to archive file."); + + File file = new File(filePath); + + LOGGER.info("Parent directory :"+file.getParentFile().getName()); + FileInputStream fis = new FileInputStream(file); + ZipEntry zipEntry = new ZipEntry(file.getParentFile().getName()+"/"+file.getName()); + zipStream.putNextEntry(zipEntry); + zipStream.write(IOUtils.toByteArray(fis)); + zipStream.closeEntry(); + fis.close(); + } + +} From 84703bfe044a24bd6fae1b2ffe709407c660a8a6 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 14:38:18 +0100 Subject: [PATCH 06/40] Create MultiModelService.java --- .../insee/eno/service/MultiModelService.java | 177 ++++++++++++++++++ 1 file changed, 177 insertions(+) create mode 100644 src/main/java/fr/insee/eno/service/MultiModelService.java diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java new file mode 100644 index 000000000..c120d87a6 --- /dev/null +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -0,0 +1,177 @@ +package fr.insee.eno.service; + +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.List; +import java.util.zip.ZipOutputStream; + +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.IOUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import fr.insee.eno.Constants; +import fr.insee.eno.parameters.ENOParameters; +import fr.insee.eno.params.ValorizatorParameters; +import fr.insee.eno.params.ValorizatorParametersImpl; +import fr.insee.eno.preprocessing.DDISplittingPreprocessor; +import fr.insee.eno.utils.FileArchiver; +import fr.insee.eno.utils.FolderCleaner; + +public class MultiModelService { + + private static final Logger LOGGER = LoggerFactory.getLogger(MultiModelService.class); + + private ParameterizedGenerationService parameterizedGenerationService = new ParameterizedGenerationService(false); + private ValorizatorParameters valorizatorParameters = new ValorizatorParametersImpl(); + + private DDISplittingPreprocessor ddiSplitPreprocessor = new DDISplittingPreprocessor(); + + /** + * It generates archive file using parameterizedGenerationService + * @param inputFile : the xml input File which contains multiple ddi instrument in the same file (required) + * @param params : java object ENOParameter (required) + * @param metadata : InputStream of metadata xml file (optional) + * @param specificTreatment : InputStream of an xsl sheet (optional) + * @param mapping : InputStream of a xml file using in FRModeleColtranePostProcessor (optional) + * @return the zip archive file which contains all generated files + * @throws Exception + */ + public File generateQuestionnaire(File inputFile, ENOParameters params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception{ + LOGGER.info("MultiModel Generation of questionnaire -- STARTED --"); + + String surveyName = params.getParameters()!=null?params.getParameters().getCampagne():"test"; + cleanTempFolder(surveyName); + + List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); + + File outputArchive = File.createTempFile(surveyName+"-", ".zip", Constants.TEMP_FOLDER); + FileOutputStream fileOutputStream = new FileOutputStream(outputArchive); + ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); + LOGGER.info("Archive file initalized to :"+outputArchive.getAbsolutePath()); + + for(File ddiFile : ddiFiles) { + File output = parameterizedGenerationService.generateQuestionnaire(ddiFile, params, metadata, specificTreatment, mapping); + FileArchiver.writeToZipFile(output.getAbsolutePath(), zipOutputStream); + FolderCleaner cleanService = new FolderCleaner(); + File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); + cleanService.specialCleaningFiles(folderTemp, output.getParentFile().getName()); + } + + zipOutputStream.close(); + fileOutputStream.close(); + + LOGGER.info("MultiModel Generation of questionnaire -- END --"); + return outputArchive; + + } + + /** + * It generates archive file using parameterizedGenerationService + * @param inputFile : the xml input File which contains multiple ddi instrument in the same file (required) + * @param params : InputStream of parameters xml file (required) + * @param metadata : InputStream of metadata xml file (optional) + * @param specificTreatment : InputStream of an xsl sheet (optional) + * @param mapping : InputStream of a xml file using in FRModeleColtranePostProcessor (optional) + * @return the zip archive file which contains all generated files + * @throws Exception + */ + public File generateQuestionnaire(File inputFile, InputStream params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception { + LOGGER.info("MultiModel Generation of questionnaire -- STARTED --"); + + byte[] paramsBytes = IOUtils.toByteArray(params); + + ENOParameters enoParameters = valorizatorParameters.getParameters(new ByteArrayInputStream(paramsBytes)); + String surveyName = enoParameters.getParameters()!=null?enoParameters.getParameters().getCampagne():"test"; + cleanTempFolder(surveyName); + + List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); + + File outputArchive = File.createTempFile(surveyName+"-", ".zip", Constants.TEMP_FOLDER); + FileOutputStream fileOutputStream = new FileOutputStream(outputArchive); + ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); + LOGGER.info("Archive file initalized to :"+outputArchive.getAbsolutePath()); + + for(File ddiFile : ddiFiles) { + File output = parameterizedGenerationService.generateQuestionnaire(ddiFile, new ByteArrayInputStream(paramsBytes), metadata, specificTreatment, mapping); + FileArchiver.writeToZipFile(output.getAbsolutePath(), zipOutputStream); + FolderCleaner cleanService = new FolderCleaner(); + File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); + cleanService.specialCleaningFiles(folderTemp, output.getParentFile().getName()); + } + + zipOutputStream.close(); + fileOutputStream.close(); + + LOGGER.info("MultiModel Generation of questionnaire -- END --"); + return outputArchive; + + } + + /** + * It generates archive file using parameterizedGenerationService + * @param inputFile : the xml input File which contains multiple ddi instrument in the same file (required) + * @param params : xml File of ENOParameter (required) + * @param metadata : xml File of metadata (optional) + * @param specificTreatment : xsl file of the xsl sheet (optional) + * @param mapping : a xml File using in FRModeleColtranePostProcessor (optional) + * @return the zip archive file which contains all generated file + * @throws Exception + */ + public File generateQuestionnaire(File inputFile, File params, File metadata, File specificTreatment, File mapping) throws Exception{ + File output = null; + + InputStream parametersIS = null; + InputStream metadataIS = null; + InputStream specificTreatmentIS = null; + InputStream mappingIS = null; + parametersIS = params!=null ? FileUtils.openInputStream(params):null; + metadataIS = metadata!=null ? FileUtils.openInputStream(metadata):null; + specificTreatmentIS = specificTreatment!=null ? FileUtils.openInputStream(specificTreatment):null; + mappingIS = mapping!=null ? FileUtils.openInputStream(mapping):null; + output = generateQuestionnaire(inputFile, parametersIS, metadataIS, specificTreatmentIS, mappingIS); + + if(parametersIS!=null) {parametersIS.close();}; + if(metadataIS!=null) {metadataIS.close();}; + if(specificTreatmentIS!=null) {specificTreatmentIS.close();}; + if(mappingIS!=null) {mappingIS.close();}; + + return output; + + } + + /** + * Clean the temp dir if it exists + * + * @throws IOException + * + */ + public void cleanTempFolder(String name) throws IOException { + FolderCleaner cleanService = new FolderCleaner(); + if (Constants.TEMP_FOLDER_PATH != null) { + File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + name); + cleanTempFolder(folderTemp); + } else { + LOGGER.debug("Temp Folder is null"); + } + } + + /** + * Clean the temp dir if it exists + * + * @throws IOException + * + */ + private void cleanTempFolder(File folder) throws IOException { + FolderCleaner cleanService = new FolderCleaner(); + if (folder != null) { + cleanService.cleanOneFolder(folder); + } else { + LOGGER.debug("Temp Folder is null"); + } + } + +} From 832f9f96f702f32bf9113e4a19eac6dfa97825a6 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 14:38:34 +0100 Subject: [PATCH 07/40] MulitModel : add test --- .../TestMultiModelGenerationService.java | 34 + .../params/in-to-out/multimodel/ddi.xml | 21507 ++++++++++++++++ .../params/in-to-out/multimodel/params-fr.xml | 27 + 3 files changed, 21568 insertions(+) create mode 100644 src/test/java/fr/insee/eno/params/generation/TestMultiModelGenerationService.java create mode 100644 src/test/resources/params/in-to-out/multimodel/ddi.xml create mode 100644 src/test/resources/params/in-to-out/multimodel/params-fr.xml diff --git a/src/test/java/fr/insee/eno/params/generation/TestMultiModelGenerationService.java b/src/test/java/fr/insee/eno/params/generation/TestMultiModelGenerationService.java new file mode 100644 index 000000000..0d81f713d --- /dev/null +++ b/src/test/java/fr/insee/eno/params/generation/TestMultiModelGenerationService.java @@ -0,0 +1,34 @@ +package fr.insee.eno.params.generation; + +import java.io.File; + +import org.junit.Assert; +import org.junit.Test; + +import fr.insee.eno.service.MultiModelService; + +public class TestMultiModelGenerationService { + + + private MultiModelService multiModelService = new MultiModelService(); + + + + @Test + public void defaultTest() { + String basePathDDI = "src/test/resources/params/in-to-out/multimodel"; + File input = new File(String.format("%s/ddi.xml", basePathDDI)); + File params = new File(String.format("%s/params-fr.xml", basePathDDI)); + + try { + File outputFile = multiModelService.generateQuestionnaire(input, params, null, null, null); + System.out.println("File generated to :"+outputFile.getAbsolutePath()); + } catch (Exception e) { + Assert.fail(); + // TODO Auto-generated catch block + e.printStackTrace(); + } + + } + +} diff --git a/src/test/resources/params/in-to-out/multimodel/ddi.xml b/src/test/resources/params/in-to-out/multimodel/ddi.xml new file mode 100644 index 000000000..908a951bd --- /dev/null +++ b/src/test/resources/params/in-to-out/multimodel/ddi.xml @@ -0,0 +1,21507 @@ + + + + fr.insee + INSEE-k0hy96wtbis + 1 + + + Enquête Acemo trimestrielle + + + + fr.insee + RessourcePackage-k0hy96wtbis + 1 + + fr.insee + InterviewerInstructionScheme-k0hy96wtbis + 1 + + A définir + + + fr.insee + k1ura6hp-CI-1-II-1 + 1.0 + + warning + + + + Merci de renseigner dans les durées hebdomadaires uniquement les salariés à temps complet. Les salariés à temps partiel et au forfait sont à renseigner aux questions précédentes. + + + + + fr.insee + k1ura6hp-CI-2-II-2 + 1.0 + + warning + + + + La durée hebdomadaire renseignée paraît trop élevée. Merci de vérifier votre réponse. + + + + + fr.insee + k266f9xb-CI-1-II-1 + 1.0 + + warning + + + + Merci de renseigner dans les durées hebdomadaires uniquement les salariés à temps complet. Les salariés à temps partiel et au forfait sont à renseigner aux questions précédentes. + + + + + fr.insee + k266f9xb-CI-2-II-2 + 1.0 + + warning + + + + La durée hebdomadaire renseignée paraît trop élevée. Merci de vérifier votre réponse. + + + + + + fr.insee + k1bvjz8j + 1 + + instruction + + + + Indiquez la valeur zéro pour les questions qui sont sans objet. + + + + + fr.insee + k239n0ob + 1 + + instruction + + + + + + Y compris + apprentis et emplois aidés, + hors + intérimaires, extras et stagiaires, + hors + contrats de soutien et d'aide par le travail. + + + + + + + fr.insee + k2di7o8m + 1 + + instruction + + + + Indiquez le nombre de salariés en personnes physiques (pas d’équivalent temps plein). + + + + + fr.insee + k239vtgh-CI-0-II-0 + 1 + + warning + + + + Veuillez renseigner le nombre total de salariés. + + + + + fr.insee + k239s65r-CI-0-II-0 + 1 + + warning + + + + Le nombre de salariés en CDD doit être inférieur ou égal à l’effectif total. + + + + + fr.insee + k239s65r-CI-1-II-1 + 1 + + warning + + + + Veuillez renseigner le nombre de salariés en CDD. + + + + + fr.insee + k239h29j + 1 + + instruction + + + + Parmi le nombre total de salariés déclarés à la question 1 ( = ¤k239vtgh-QOP-k239l9jm¤ ) : + + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + OutParameter + + + + + + fr.insee + k1ur2r0d + 1 + + instruction + + + + Remplissez autant de lignes qu'il existe de durées différentes. Des horaires distincts correspondant à une même durée hebdomadaire doivent être regroupés sur une ligne. + + + + + fr.insee + k1urfffx + 1 + + instruction + + + + Par exemple, pour une durée collective de 37,50 h par semaine, inscrivez 35,00 h s'il y a 13 jours de RTT et inscrivez 37,50 h s'il n'y a pas de jour de RTT. + + + + + fr.insee + k1ura6hp-CI-0-II-0 + 1 + + warning + + + + La somme des effectifs de salariés à temps partiel, au forfait jours et à temps complet ( = ¤k2ej7p1i-GOP¤ ) doit être égale à l'effectif total ( = ¤k239vtgh-QOP-k239l9jm¤ ) + + + + fr.insee + k2ej7p1i-GOP + 1 + OutParameter + + + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + OutParameter + + + + + + fr.insee + k266gxte + 1 + + instruction + + + + Nombre de salariés ayant effectué au moins une heure supplémentaire au cours du trimestre : un salarié n'est compté qu'une fois. + + + + + fr.insee + k1urk37m + 1 + + instruction + + + + Pour chaque poste de travail retenu, vous suivrez le même salarié d’un trimestre à l’autre. Ne faites pas de moyenne ni de cumul. + + + + + fr.insee + k1urgxks + 1 + + instruction + + + + Au cas où un poste de travail retenu deviendrait vacant, ou en cas de changement de coefficient d’un salarié suivi, il convient d'en choisir un autre de même coefficient à l'aide de la grille de classification associée à votre convention collective, disponible à l'adresse suivante : www.travail-emploi.gouv.fr/ficheacemo ¤FICHECC¤. + + + + + fr.insee + k265pxao + 1 + + instruction + + + + + + Colonne A + (si elle n'est pas pré-remplie) : pour chacun des douze niveaux de qualification définis dans la grille de classification associée à votre convention collective, choisissez le poste de travail qui vous paraît le plus représentatif, par exemple celui dont l'effectif est le plus important dans le niveau concerné. Veuillez prendre un poste réellement occupé par un salarié que vous suivrez d’un trimestre à l’autre. Désignez le poste par un libellé précis (par exemple "ouvrier de nettoyage niveau OS2"), que nous pré-remplirons dans votre questionnaire des prochains trimestres. + + + + + + + fr.insee + k265cxci + 1 + + instruction + + + + + + Colonne B + (si elle n'est pas pré-remplie) : veuillez indiquer pour chaque poste de travail retenu le coefficient ou niveau hiérarchique associé (s'il existe). + + + + + + + fr.insee + k265wc09 + 1 + + instruction + + + + + + Colonne C + : veuillez indiquer pour chaque poste de travail retenu le salaire mensuel de base brut (hors primes - sauf les primes ou indemnités complémentaires liées à la RTT, hors avantages en nature, hors heures supplémentaires) du salarié suivi. + + + + + + + fr.insee + k265lhyl + 1 + + instruction + + + + + + Colonne D + : veuillez indiquer pour chaque poste de travail retenu l'horaire mensuel de base (arrondi en heures) du salarié suivi. Si le salarié est au forfait jours, indiquez conventionnellement 152 heures par mois. + + + + + + + fr.insee + k1ural1j-CI-0-II-0 + 1 + + warning + + + + Veuillez renseigner les salaires et les horaires de tous les postes retenus. + + + + + fr.insee + k239rjea + 1 + + instruction + + + + Indiquez la valeur zéro pour les questions qui sont sans objet. + + + + + fr.insee + k1c2mr9o + 1 + + instruction + + + + + + Y compris + apprentis et emplois aidés, + hors + intérimaires, extras et stagiaires, + hors + contrats de soutien et d'aide par le travail. + + + + + + + fr.insee + k2dilez6 + 1 + + instruction + + + + Indiquez le nombre de salariés en personnes physiques (pas d’équivalent temps plein). + + + + + fr.insee + k0hy7wtn-CI-0-II-0 + 1 + + warning + + + + Veuillez renseigner le nombre total de salariés. + + + + + fr.insee + k0hysdl9-CI-0-II-0 + 1 + + warning + + + + Veuillez renseigner le nombre de salariés en CDD. + + + + + fr.insee + k0hysdl9-CI-1-II-1 + 1 + + warning + + + + Le nombre de salariés en CDD doit être inférieur à l'effectif total. + + + + + fr.insee + k2gc3m0m + 1 + + instruction + + + + La principale convention appliquée dans votre ¤CONCERN2¤ est celle dont les dispositions s’appliquent au plus grand nombre de salariés. Il peut s’agir d’une convention collective de branche, d’une convention d'entreprise ou d'établissement ou d’un statut. + + + + + fr.insee + k2dhl92n + 1 + + instruction + + + + Le numéro indiqué est l’identifiant de convention collective (code IDCC) disponible sur www.travail-emploi.gouv.fr/idcc + + + + + fr.insee + k1cav4yq-CI-0-II-0 + 1 + + warning + + + + Veuillez cocher une seule convention : celle qui s'applique au plus grand nombre de salariés. + + + + + fr.insee + k1urtrhx + 1 + + instruction + + + + + + Colonne A + : répartissez votre effectif total de salariés (y compris apprentis et emplois aidés, mais hors intérimaires, extras et stagiaires) selon les douze niveaux de qualification définis dans la grille de classification associée à votre convention collective. Cette grille figure avec la lettre-avis de l’enquête. Elle est également disponible à l'adresse suivante : www.travail-emploi.gouv.fr/ficheacemo ¤FICHECC¤. Si elle ne correspond pas à votre convention collective, envoyez un message à dares.dt-salaires@travail.gouv.fr en indiquant quelle est votre convention collective. + + + + + + + fr.insee + k1urn4wj + 1 + + instruction + + + + + + Colonne B + : pour chacun des douze niveaux de qualification, choisissez le poste de travail qui vous paraît le plus représentatif, par exemple celui dont l'effectif est le plus important dans le niveau concerné. Veuillez prendre un poste réellement occupé par un salarié que vous suivrez d’un trimestre à l’autre. Désignez le poste par un libellé précis (par exemple "ouvrier de nettoyage niveau OS2"), que nous pré-remplirons dans votre questionnaire des prochains trimestres. + + + + + + + fr.insee + k1ureccn + 1 + + instruction + + + + + + Colonne C + : veuillez indiquer pour chaque poste de travail retenu le coefficient ou niveau hiérarchique associé (s'il existe). + + + + + + + fr.insee + k1urvjp2 + 1 + + instruction + + + + + + Colonne D + : veuillez indiquer pour chaque poste de travail retenu le salaire mensuel de base brut (hors primes - sauf les primes ou indemnités complémentaires liées à la RTT, hors avantages en nature, hors heures supplémentaires) du salarié suivi. + + + + + + + fr.insee + k2aanzhg + 1 + + instruction + + + + + + Colonne E + : veuillez indiquer pour chaque poste de travail retenu l'horaire mensuel de base (arrondi en heures) du salarié suivi. Si le salarié est au forfait jours, indiquez conventionnellement 152 heures par mois. + + + + + + + fr.insee + k2dhlort + 1 + + instruction + + + + + + ​ + + Pour chaque poste de travail retenu, vous suivrez le même salarié d’un trimestre à l’autre. Ne faites pas de moyenne ni de cumul. + + + + + + + fr.insee + k1uraed0-CI-0-II-0 + 1 + + warning + + + + La somme des effectifs de salariés répartis dans le tableau selon les douze niveaux de qualification ( = ¤k2aan9fp-GOP¤ ) doit être égale à l'effectif total ( = ¤k0hy7wtn-QOP-k0hyyec6¤ ). + + + + fr.insee + k2aan9fp-GOP + 1 + OutParameter + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + + + + fr.insee + k2diipm4 + 1 + + instruction + + + + Parmi le nombre total de salariés déclarés à la question I.1 ( = ¤k0hy7wtn-QOP-k0hyyec6¤ ) : + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + + + + fr.insee + k266oqkq + 1 + + instruction + + + + Remplissez autant de lignes qu'il existe de durées différentes. Des horaires distincts correspondant à une même durée hebdomadaire doivent être regroupés sur une ligne. + + + + + fr.insee + k266wjve + 1 + + instruction + + + + Par exemple, pour une durée collective de 37,50 h par semaine, inscrivez 35,00 h s'il y a 13 jours de RTT et inscrivez 37,50 h s'il n'y a pas de jour de RTT. + + + + + fr.insee + k266f9xb-CI-0-II-0 + 1 + + warning + + + + La somme des effectifs de salariés à temps partiel, au forfait jours et à temps complet ( = ¤k2ek3jtf-GOP¤ ) doit être égale à l'effectif total ( = ¤k0hy7wtn-QOP-k0hyyec6¤ ). + + + + fr.insee + k2ek3jtf-GOP + 1 + OutParameter + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + + + + fr.insee + k1bv657e + 1 + + instruction + + + + Nombre de salariés ayant effectué au moins une heure supplémentaire au cours du trimestre : un salarié n'est compté qu'une fois. + + + + + fr.insee + k1c7xcvx + 1 + + instruction + + + + Le montant du Smic brut horaire a été fixé à ¤VAL_SMIC¤ € au ¤DATE1BIS¤. Les bénéficiaires directs de cette revalorisation sont les salariés dont le salaire horaire était inférieur à ce montant avant le ¤DATE2¤. + + + + + fr.insee + k1c9l6y5 + 1 + + instruction + + + + + + Y compris + contrats de professionnalisation, contrats uniques d'insertion et autres emplois aidés, + hors + apprentis, intérimaires, extras et stagiaires. + + + + + + + fr.insee + k1c9e2em-CI-0-II-0 + 1 + + warning + + + + Veuillez préciser si vous avez des salariés concernés par la revalorisation du Smic. + + + + + fr.insee + k1c9rr20-CI-0-II-0 + 1 + + warning + + + + Veuillez renseigner le nombre de salariés concernés par la revalorisation du Smic. + + + + + fr.insee + k24pbhww-CI-0-II-0 + 1 + + warning + + + + La somme des effectifs à temps complet et à temps partiel doit être égale au nombre de salariés concernés par la revalorisation du Smic. + + + + + fr.insee + k24pfxg4-CI-0-II-0 + 1 + + warning + + + + La somme des effectifs de femmes et d'hommes doit être égale au nombre de salariés concernés par la revalorisation du Smic. + + + + + fr.insee + k1by2q6c + 1 + + instruction + + + + Il s'agit de postes nouvellement crées, inoccupés ou encore occupés et sur le point de se libérer pour lesquels vous entreprenez des démarches actives de recherche de candidats adéquats, immédiatement et/ou dans les 3 prochains mois à l'extérieur de votre ¤CONCERN2¤. Ces postes peuvent être des CDI, des CDD, des emplois saisonniers, même de courte durée (de moins d'un mois). + + + + + fr.insee + k1bwzjsr-CI-0-II-0 + 1 + + warning + + + + Veuillez préciser si vous avez des emplois vacants. + + + + + fr.insee + k2dj1xk8-CI-0-II-0 + 1 + + warning + + + + Veuillez renseigner le nombre d'emplois vacants. + + + + + fr.insee + k1c7abcz-CI-0-II-0 + 1 + + warning + + + + La somme des catégories d'emplois vacants doit être égale au nombre total de ces emplois. + + + + + fr.insee + k2dhp3ob + 1 + + instruction + + + + Le numéro indiqué est l’identifiant de convention collective (code IDCC) disponible sur www.travail-emploi.gouv.fr/idcc + + + + + + fr.insee + ControlConstructScheme-k0hy96wtbis + 1 + + fr.insee + Sequence-k0hy96wtbis-m1 + 1 + + Enquête Acemo trimestrielle m1 + + template + + fr.insee + k0hybtbl + 1 + Sequence + + + fr.insee + k1ur5ou2 + 1 + Sequence + + + + fr.insee + k1bwuuxh + 1 + Sequence + + + + + fr.insee + Sequence-k0hy96wtbis-m2 + 1 + + Enquête Acemo trimestrielle m2 + + template + + + fr.insee + k239y3hb + 1 + Sequence + + + fr.insee + k1urppgo + 1 + Sequence + + + fr.insee + k266k00w + 1 + Sequence + + + fr.insee + k1c7k40t + 1 + Sequence + + + fr.insee + k1bwuuxh + 1 + Sequence + + + + + fr.insee + Sequence-k0hy96wtbis-m3 + 1 + + Enquête Acemo trimestrielle m3 + + template + + fr.insee + k0hybtbl + 1 + Sequence + + + fr.insee + k1ur5ou2 + 1 + Sequence + + + + fr.insee + k1bwuuxh + 1 + Sequence + + + fr.insee + k1c7k40t + 1 + Sequence + + + fr.insee + k1ca4yip + 1 + Sequence + + + + fr.insee + k0hybtbl + 1 + + INFOSV1V3 + + + Effectifs salariés et temps de travail dans votre ¤CONCERN2¤ + + + fr.insee + k1bvjz8j + 1 + Instruction + + module + + fr.insee + k0hylykc + 1 + Sequence + + + fr.insee + k1uqh7su + 1 + Sequence + + + fr.insee + k0hyywqf + 1 + Sequence + + + + fr.insee + k0hylykc + 1 + + EFFSAL + + + Effectif de salariés au ¤REFER¤ + + submodule + + fr.insee + k239vtgh-QC + 1 + QuestionConstruct + + + fr.insee + k239vtgh-CI-0 + 1 + ComputationItem + + + fr.insee + k239s65r-QC + 1 + QuestionConstruct + + + fr.insee + k239s65r-CI-0 + 1 + ComputationItem + + + fr.insee + k239s65r-CI-1 + 1 + ComputationItem + + + + fr.insee + k1uqh7su + 1 + + TEMPSDETRAVAIL + + + Temps de travail des salariés et durée du travail + + + fr.insee + k239h29j + 1 + Instruction + + submodule + + fr.insee + k266tqxw-QC + 1 + QuestionConstruct + + + fr.insee + k1uqp04a-QC + 1 + QuestionConstruct + + + fr.insee + k1ura6hp-QC + 1 + QuestionConstruct + + + fr.insee + k1ura6hp-CI-0 + 1 + ComputationItem + + + fr.insee + k1ura6hp-CI-1 + 1 + ComputationItem + + + fr.insee + k1ura6hp-CI-2 + 1 + ComputationItem + + + + fr.insee + k0hyywqf + 1 + + HSUPCOM + + + Heures supplémentaires et complémentaires au ¤TRIM¤ + + submodule + + fr.insee + k266eqvz-SI + 1 + StatementItem + + + fr.insee + k266ti4w-QC + 1 + QuestionConstruct + + + fr.insee + k266ghuf-QC + 1 + QuestionConstruct + + + fr.insee + k266hmw0-SI + 1 + StatementItem + + + fr.insee + k2670ijx-QC + 1 + QuestionConstruct + + + + fr.insee + k1ur5ou2 + 1 + + SUIVIREMV1V3 + + + Suivi des rémunérations des postes de travail les plus représentatifs de vos salariés + + module + + fr.insee + k1ural1j-QC + 1 + QuestionConstruct + + + fr.insee + k1ural1j-CI-0 + 1 + ComputationItem + + + + fr.insee + k239y3hb + 1 + + INFOSV2 + + + Effectifs salariés et convention collective dans votre ¤CONCERN2¤ + + + fr.insee + k239rjea + 1 + Instruction + + module + + fr.insee + k239zxal + 1 + Sequence + + + fr.insee + k23a0rc8 + 1 + Sequence + + + + fr.insee + k239zxal + 1 + + EFFSALV2 + + + Effectif de salariés au ¤REFER¤ + + submodule + + fr.insee + k0hy7wtn-QC + 1 + QuestionConstruct + + + fr.insee + k0hy7wtn-CI-0 + 1 + ComputationItem + + + fr.insee + k0hysdl9-QC + 1 + QuestionConstruct + + + fr.insee + k0hysdl9-CI-0 + 1 + ComputationItem + + + fr.insee + k0hysdl9-CI-1 + 1 + ComputationItem + + + + fr.insee + k23a0rc8 + 1 + + CONVCOLLV2 + + + Convention collective de branche, convention d'entreprise ou d'établissement, statut + + + fr.insee + k2gc3m0m + 1 + Instruction + + submodule + + fr.insee + k1cav4yq-QC + 1 + QuestionConstruct + + + fr.insee + k1cav4yq-CI-0 + 1 + ComputationItem + + + fr.insee + k2ejjfdb-a-k1cav4yq + 1 + IfThenElse + + + + fr.insee + k1urppgo + 1 + + SUIVIREMV2 + + + Répartition des salariés par niveau de qualification professionnelle, détermination des postes de travail les plus représentatifs et suivi des rémunérations + + module + + fr.insee + k1uraed0-QC + 1 + QuestionConstruct + + + fr.insee + k1uraed0-CI-0 + 1 + ComputationItem + + + + fr.insee + k266k00w + 1 + + TEMPSDETRA + + + Temps de travail des salariés et durée du travail + + module + + fr.insee + k266klmc + 1 + Sequence + + + fr.insee + k266usr3 + 1 + Sequence + + + + fr.insee + k266klmc + 1 + + TEMPSTRAVAILV2 + + + Temps de travail des salariés et durée du travail + + + fr.insee + k2diipm4 + 1 + Instruction + + submodule + + fr.insee + k1uqg8k9-QC + 1 + QuestionConstruct + + + fr.insee + k266rlfn-QC + 1 + QuestionConstruct + + + fr.insee + k266f9xb-QC + 1 + QuestionConstruct + + + fr.insee + k266f9xb-CI-0 + 1 + ComputationItem + + + fr.insee + k266f9xb-CI-1 + 1 + ComputationItem + + + fr.insee + k266f9xb-CI-2 + 1 + ComputationItem + + + + fr.insee + k266usr3 + 1 + + HSUPCOMPV2 + + + Heures supplémentaires et complémentaires au ¤TRIM¤ + + submodule + + fr.insee + k2en57pz-SI + 1 + StatementItem + + + fr.insee + k1bv09kz-QC + 1 + QuestionConstruct + + + fr.insee + k1buzukh-QC + 1 + QuestionConstruct + + + fr.insee + k1bvkd1w-SI + 1 + StatementItem + + + fr.insee + k1bv6jho-QC + 1 + QuestionConstruct + + + + fr.insee + k1c7k40t + 1 + + REVALSMICV2V3 + + + Effets de la revalorisation du Smic au ¤DATE1¤ + + module + + fr.insee + k1c7o9i3 + 1 + Sequence + + + + fr.insee + k1c7o9i3 + 1 + + REVALORISA + + + Revalorisation du Smic (Salaire minimum interprofessionnel de croissance) + + + fr.insee + k1c7xcvx + 1 + Instruction + + submodule + + fr.insee + k1c7k8tv-QC + 1 + QuestionConstruct + + + fr.insee + k1c9e2em-QC + 1 + QuestionConstruct + + + fr.insee + k1c9e2em-CI-0 + 1 + ComputationItem + + + fr.insee + k24pkndo-a-k1c9e2em + 1 + IfThenElse + + + + fr.insee + k1bwuuxh + 1 + + NBVAC + + + Emplois pour lesquels vous faites des démarches de recherche d'un candidat + + module + + fr.insee + k1bwzjsr-QC + 1 + QuestionConstruct + + + fr.insee + k1bwzjsr-CI-0 + 1 + ComputationItem + + + fr.insee + k24qoxg9-a-k1bwzjsr + 1 + IfThenElse + + + + fr.insee + k1ca4yip + 1 + + CONVCOLLV3 + + + Convention collective de branche, convention d'entreprise ou d'établissement, statut + + module + + fr.insee + k1ca4y9c-QC + 1 + QuestionConstruct + + + fr.insee + k2gdsifk-a-k1ca4y9c + 1 + IfThenElse + + + + fr.insee + k1q84oqu + 1 + + FINQUEST + + + FIN DU QUESTIONNAIRE + + module + + + fr.insee + k2ejjfdb-a-k1cav4yq + 1 + + A définir + + + + + hideable + + + xpath + + fr.insee + k2ejjfdb-a-k1cav4yq-IP-1 + 1 + + NBCOCHE + + + + + fr.insee + k2eje58b-GOP + 1 + OutParameter + + + fr.insee + k2ejjfdb-a-k1cav4yq-IP-1 + 1 + InParameter + + + not(k2ejjfdb-a-k1cav4yq-IP-1 > 0) + + + + fr.insee + k2ejjfdb-a-k1cav4yq-THEN + 1 + Sequence + + + + fr.insee + k2ejjfdb-a-k1cav4yq-THEN + 1 + + + + + fr.insee + k2dhpix8-QC + 1 + QuestionConstruct + + + + fr.insee + k24pkndo-a-k1c9e2em + 1 + + A définir + + + + + hideable + + + xpath + + fr.insee + k24pkndo-a-k1c9e2em-IP-1 + 1 + + FILSMIC + + + + + fr.insee + k1c9e2em-QOP-k1c9y1a4 + 1 + OutParameter + + + fr.insee + k24pkndo-a-k1c9e2em-IP-1 + 1 + InParameter + + + not(k24pkndo-a-k1c9e2em-IP-1 = '0') + + + + fr.insee + k24pkndo-a-k1c9e2em-THEN + 1 + Sequence + + + + fr.insee + k24pkndo-a-k1c9e2em-THEN + 1 + + + + + fr.insee + k1c9rr20-QC + 1 + QuestionConstruct + + + fr.insee + k1c9rr20-CI-0 + 1 + ComputationItem + + + fr.insee + k24pbhww-QC + 1 + QuestionConstruct + + + fr.insee + k24pbhww-CI-0 + 1 + ComputationItem + + + fr.insee + k24pfxg4-QC + 1 + QuestionConstruct + + + fr.insee + k24pfxg4-CI-0 + 1 + ComputationItem + + + + fr.insee + k24qoxg9-a-k1bwzjsr + 1 + + A définir + + + + + hideable + + + xpath + + fr.insee + k24qoxg9-a-k1bwzjsr-IP-1 + 1 + + EMPVAC + + + + + fr.insee + k1bwzjsr-QOP-k1bxpipe + 1 + OutParameter + + + fr.insee + k24qoxg9-a-k1bwzjsr-IP-1 + 1 + InParameter + + + not(k24qoxg9-a-k1bwzjsr-IP-1 = '0') + + + + fr.insee + k24qoxg9-a-k1bwzjsr-THEN + 1 + Sequence + + + + fr.insee + k24qoxg9-a-k1bwzjsr-THEN + 1 + + + + + fr.insee + k2dj1xk8-QC + 1 + QuestionConstruct + + + fr.insee + k2dj1xk8-CI-0 + 1 + ComputationItem + + + fr.insee + k1c7abcz-QC + 1 + QuestionConstruct + + + fr.insee + k1c7abcz-CI-0 + 1 + ComputationItem + + + + fr.insee + k2gdsifk-a-k1ca4y9c + 1 + + A définir + + + + + hideable + + + xpath + + fr.insee + k2gdsifk-a-k1ca4y9c-IP-1 + 1 + + CONVPRINC + + + + + fr.insee + k1ca4y9c-QOP-k1ca8upj + 1 + OutParameter + + + fr.insee + k2gdsifk-a-k1ca4y9c-IP-1 + 1 + InParameter + + + not(k2gdsifk-a-k1ca4y9c-IP-1 != 'CONVCOLLAUTR') + + + + fr.insee + k2gdsifk-a-k1ca4y9c-THEN + 1 + Sequence + + + + fr.insee + k2gdsifk-a-k1ca4y9c-THEN + 1 + + + + + fr.insee + k1ca9e2p-QC + 1 + QuestionConstruct + + + + fr.insee + k239vtgh-QC + 1 + + EFFTOT + + + fr.insee + k239vtgh + 1 + QuestionItem + + + + fr.insee + k239s65r-QC + 1 + + EFFCDD + + + fr.insee + k239s65r + 1 + QuestionItem + + + + fr.insee + k266tqxw-QC + 1 + + EFFTP + + + fr.insee + k266tqxw + 1 + QuestionItem + + + + fr.insee + k1uqp04a-QC + 1 + + EFFJOURF + + + fr.insee + k1uqp04a + 1 + QuestionItem + + + + fr.insee + k1ura6hp-QC + 1 + + EFFDUR + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + fr.insee + k266ti4w-QC + 1 + + HEUSUP + + + fr.insee + k266ti4w + 1 + QuestionItem + + + + fr.insee + k266ghuf-QC + 1 + + EFFHEURSUP + + + fr.insee + k266ghuf + 1 + QuestionItem + + + + fr.insee + k2670ijx-QC + 1 + + HEURCOMP + + + fr.insee + k2670ijx + 1 + QuestionItem + + + + fr.insee + k1ural1j-QC + 1 + + TABSALAIRESV3 + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + fr.insee + k0hy7wtn-QC + 1 + + EFFTOTV2 + + + fr.insee + k0hy7wtn + 1 + QuestionItem + + + + fr.insee + k0hysdl9-QC + 1 + + EFFCDDV2 + + + fr.insee + k0hysdl9 + 1 + QuestionItem + + + + fr.insee + k1cav4yq-QC + 1 + + TABCONVCOLL + + + fr.insee + k1cav4yq + 1 + QuestionGrid + + + + fr.insee + k2dhpix8-QC + 1 + + AUTRECONVCOLLV2 + + + fr.insee + k2dhpix8 + 1 + QuestionItem + + + + fr.insee + k1uraed0-QC + 1 + + TABSALAIRESV2 + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + fr.insee + k1uqg8k9-QC + 1 + + EFFTPV2 + + + fr.insee + k1uqg8k9 + 1 + QuestionItem + + + + fr.insee + k266rlfn-QC + 1 + + EFFJOURFV2 + + + fr.insee + k266rlfn + 1 + QuestionItem + + + + fr.insee + k266f9xb-QC + 1 + + EFFDURV2 + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + fr.insee + k1bv09kz-QC + 1 + + HEUSUPV2 + + + fr.insee + k1bv09kz + 1 + QuestionItem + + + + fr.insee + k1buzukh-QC + 1 + + EFFHSUPV2 + + + fr.insee + k1buzukh + 1 + QuestionItem + + + + fr.insee + k1bv6jho-QC + 1 + + HEURCOMPV2 + + + fr.insee + k1bv6jho + 1 + QuestionItem + + + + fr.insee + k1c7k8tv-QC + 1 + + NBAPP + + + fr.insee + k1c7k8tv + 1 + QuestionItem + + + + fr.insee + k1c9e2em-QC + 1 + + BENEFSMIC + + + fr.insee + k1c9e2em + 1 + QuestionItem + + + + fr.insee + k1c9rr20-QC + 1 + + EFFREVALSMIC + + + fr.insee + k1c9rr20 + 1 + QuestionItem + + + + fr.insee + k24pbhww-QC + 1 + + REPSMICEFF + + + fr.insee + k24pbhww + 1 + QuestionGrid + + + + fr.insee + k24pfxg4-QC + 1 + + REPSMICSEXE + + + fr.insee + k24pfxg4 + 1 + QuestionGrid + + + + fr.insee + k1bwzjsr-QC + 1 + + AVEZVOUSDE + + + fr.insee + k1bwzjsr + 1 + QuestionItem + + + + fr.insee + k2dj1xk8-QC + 1 + + NBVACTOT + + + fr.insee + k2dj1xk8 + 1 + QuestionItem + + + + fr.insee + k1c7abcz-QC + 1 + + REPNBVAC + + + fr.insee + k1c7abcz + 1 + QuestionGrid + + + + fr.insee + k1ca4y9c-QC + 1 + + CONVPRINC + + + fr.insee + k1ca4y9c + 1 + QuestionItem + + + + fr.insee + k1ca9e2p-QC + 1 + + AUTRECONVCOLLV3 + + + fr.insee + k1ca9e2p + 1 + QuestionItem + + + + fr.insee + k1ura6hp-CI-1 + 1.0 + + Alerte sur la durée en heures centièmes inférieure à 20 heures + + + Alerte sur la durée en heures centièmes inférieure à 20 heures + + + fr.insee + k1ura6hp-CI-1-II-1 + 1.0 + Instruction + + informational + + + xpath + + fr.insee + k1ura6hp-CI-1-IP-1 + 1.0 + + DURTRIM1 + + + + fr.insee + k1ura6hp-CI-1-IP-2 + 1.0 + + DURTRIM2 + + + + fr.insee + k1ura6hp-CI-1-IP-3 + 1.0 + + DURTRIM3 + + + + fr.insee + k1ura6hp-CI-1-IP-4 + 1.0 + + DURTRIM4 + + + + + fr.insee + k1ura6hp-QOP-k2ly3rxl + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-1-IP-1 + 1.0 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly8l2o + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-1-IP-2 + 1.0 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lyj3ty + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-1-IP-3 + 1.0 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly3oqc + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-1-IP-4 + 1.0 + InParameter + + + (contains(k1ura6hp-CI-1-IP-1,':') and (substring(k1ura6hp-CI-1-IP-1,1,1)=':' or number(substring-before(k1ura6hp-CI-1-IP-1,':')) < 20)) or (contains(k1ura6hp-CI-1-IP-2,':') and (substring(k1ura6hp-CI-1-IP-2,1,1)=':' or number(substring-before(k1ura6hp-CI-1-IP-2,':')) < 20)) or (contains(k1ura6hp-CI-1-IP-3,':') and (substring(k1ura6hp-CI-1-IP-3,1,1)=':' or number(substring-before(k1ura6hp-CI-1-IP-3,':')) < 20)) or (contains(k1ura6hp-CI-1-IP-4,':') and (substring(k1ura6hp-CI-1-IP-4,1,1)=':' or number(substring-before(k1ura6hp-CI-1-IP-4,':')) < 20)) + + + + + + + fr.insee + k1ura6hp-CI-2 + 1.0 + + Alerte sur la durée en heures centièmes supérieure à 60 heures + + + Alerte sur la durée en heures centièmes supérieure à 60 heures + + + fr.insee + k1ura6hp-CI-2-II-2 + 1.0 + Instruction + + informational + + + xpath + + fr.insee + k1ura6hp-CI-2-IP-1 + 1.0 + + DURTRIM1 + + + + fr.insee + k1ura6hp-CI-2-IP-2 + 1.0 + + DURTRIM2 + + + + fr.insee + k1ura6hp-CI-2-IP-3 + 1.0 + + DURTRIM3 + + + + fr.insee + k1ura6hp-CI-2-IP-4 + 1.0 + + DURTRIM4 + + + + + fr.insee + k1ura6hp-QOP-k2ly3rxl + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-2-IP-1 + 1.0 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly8l2o + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-2-IP-2 + 1.0 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lyj3ty + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-2-IP-3 + 1.0 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly3oqc + 1.0 + OutParameter + + + fr.insee + k1ura6hp-CI-2-IP-4 + 1.0 + InParameter + + + + (substring(k1ura6hp-CI-2-IP-1,3,1)=':' and (number(substring-before(k1ura6hp-CI-2-IP-1,':')) >= 60)) or (substring(k1ura6hp-CI-2-IP-2,3,1)=':' and (number(substring-before(k1ura6hp-CI-2-IP-2,':')) >=60)) or (substring(k1ura6hp-CI-2-IP-3,3,1)=':' and (number(substring-before(k1ura6hp-CI-2-IP-3,':')) >= 60)) or (substring(k1ura6hp-CI-2-IP-4,3,1)=':' and (number(substring-before(k1ura6hp-CI-2-IP-4,':')) >=60)) + + + + + + + fr.insee + k266f9xb-CI-1 + 1.0 + + Alerte sur la durée en heures centièmes inférieure à 20 + + + Alerte sur la durée en heures centièmes inférieure à 20 + + + fr.insee + k266f9xb-CI-1-II-1 + 1.0 + Instruction + + informational + + + xpath + + fr.insee + k266f9xb-CI-1-IP-2 + 1.0 + + DURTRIM1V2 + + + + fr.insee + k266f9xb-CI-1-IP-3 + 1.0 + + DURTRIM2V2 + + + + fr.insee + k266f9xb-CI-1-IP-4 + 1.0 + + DURTRIM3V2 + + + + fr.insee + k266f9xb-CI-1-IP-5 + 1.0 + + DURTRIM4V2 + + + + + fr.insee + k266f9xb-QOP-k2ly98zh + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-1-IP-2 + 1.0 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyj778 + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-1-IP-3 + 1.0 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly3rl8 + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-1-IP-4 + 1.0 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyck6o + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-1-IP-5 + 1.0 + InParameter + + + (contains(k266f9xb-CI-1-IP-2,':') and (substring(k266f9xb-CI-1-IP-2,1,1)=':' or number(substring-before(k266f9xb-CI-1-IP-2,':')) < 20)) or (contains(k266f9xb-CI-1-IP-3,':') and (substring(k266f9xb-CI-1-IP-3,1,1)=':' or number(substring-before(k266f9xb-CI-1-IP-3,':')) < 20)) or (contains(k266f9xb-CI-1-IP-4,':') and (substring(k266f9xb-CI-1-IP-4,1,1)=':' or number(substring-before(k266f9xb-CI-1-IP-4,':')) < 20)) or (contains(k266f9xb-CI-1-IP-5,':') and (substring(k266f9xb-CI-1-IP-5,1,1)=':' or number(substring-before(k266f9xb-CI-1-IP-5,':')) < 20)) + + + + + + + fr.insee + k266f9xb-CI-2 + 1.0 + + Alerte sur la durée en heures centièmes supérieure à 60 + + + Alerte sur la durée en heures centièmes supérieure à 60 + + + fr.insee + k266f9xb-CI-2-II-2 + 1.0 + Instruction + + informational + + + xpath + + fr.insee + k266f9xb-CI-2-IP-2 + 1.0 + + DURTRIM1V2 + + + + fr.insee + k266f9xb-CI-2-IP-3 + 1.0 + + DURTRIM2V2 + + + + fr.insee + k266f9xb-CI-2-IP-4 + 1.0 + + DURTRIM3V2 + + + + fr.insee + k266f9xb-CI-2-IP-5 + 1.0 + + DURTRIM4V2 + + + + + fr.insee + k266f9xb-QOP-k2ly98zh + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-2-IP-2 + 1.0 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyj778 + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-2-IP-3 + 1.0 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly3rl8 + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-2-IP-4 + 1.0 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyck6o + 1.0 + OutParameter + + + fr.insee + k266f9xb-CI-2-IP-5 + 1.0 + InParameter + + + (substring(k266f9xb-CI-2-IP-5,3,1)=':' and (number(substring-before(k266f9xb-CI-2-IP-5,':')) >= 60)) or (substring(k266f9xb-CI-2-IP-2,3,1)=':' and (number(substring-before(k266f9xb-CI-2-IP-2,':')) >=60)) or (substring(k266f9xb-CI-2-IP-3,3,1)=':' and (number(substring-before(k266f9xb-CI-2-IP-3,':')) >= 60)) or (substring(k266f9xb-CI-2-IP-4,3,1)=':' and (number(substring-before(k266f9xb-CI-2-IP-4,':')) >=60)) + + + + + + fr.insee + k239vtgh-CI-0 + 1 + + Effectif total vide + + + Effectif total vide + + + fr.insee + k239vtgh-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k239vtgh-CI-0-IP-1 + 1 + + EFFTOT + + + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + OutParameter + + + fr.insee + k239vtgh-CI-0-IP-1 + 1 + InParameter + + + k239vtgh-CI-0-IP-1 = '' + + + + + fr.insee + k239s65r-CI-0 + 1 + + L'effectif CDD doit être inférieur ou égal à l'effectif total + + + L'effectif CDD doit être inférieur ou égal à l'effectif total + + + fr.insee + k239s65r-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k239s65r-CI-0-IP-1 + 1 + + EFFTOT + + + + fr.insee + k239s65r-CI-0-IP-2 + 1 + + EFFCDD + + + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + OutParameter + + + fr.insee + k239s65r-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k239s65r-QOP-k239u802 + 1 + OutParameter + + + fr.insee + k239s65r-CI-0-IP-2 + 1 + InParameter + + + k239s65r-CI-0-IP-1 < k239s65r-CI-0-IP-2 + + + + + fr.insee + k239s65r-CI-1 + 1 + + CDD non renseigné + + + CDD non renseigné + + + fr.insee + k239s65r-CI-1-II-1 + 1 + Instruction + + warning + + + xpath + + fr.insee + k239s65r-CI-1-IP-1 + 1 + + EFFCDD + + + + + fr.insee + k239s65r-QOP-k239u802 + 1 + OutParameter + + + fr.insee + k239s65r-CI-1-IP-1 + 1 + InParameter + + + k239s65r-CI-1-IP-1 = '' + + + + + fr.insee + k1ura6hp-CI-0 + 1 + + La somme des salariés par durée n'est pas égale au total + + + La somme des salariés par durée n'est pas égale au total + + + fr.insee + k1ura6hp-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1ura6hp-CI-0-IP-1 + 1 + + EFFTOT + + + + fr.insee + k1ura6hp-CI-0-IP-2 + 1 + + EFFTP + + + + fr.insee + k1ura6hp-CI-0-IP-3 + 1 + + EFFDURF + + + + fr.insee + k1ura6hp-CI-0-IP-4 + 1 + + EFFDURT1 + + + + fr.insee + k1ura6hp-CI-0-IP-5 + 1 + + EFFDURT2 + + + + fr.insee + k1ura6hp-CI-0-IP-6 + 1 + + EFFDURT3 + + + + fr.insee + k1ura6hp-CI-0-IP-7 + 1 + + EFFDURT4 + + + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + OutParameter + + + fr.insee + k1ura6hp-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k266tqxw-QOP-k266s9np + 1 + OutParameter + + + fr.insee + k1ura6hp-CI-0-IP-2 + 1 + InParameter + + + + + fr.insee + k1uqp04a-QOP-k1urc3ep + 1 + OutParameter + + + fr.insee + k1ura6hp-CI-0-IP-3 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly30pv + 1 + OutParameter + + + fr.insee + k1ura6hp-CI-0-IP-4 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lygkxt + 1 + OutParameter + + + fr.insee + k1ura6hp-CI-0-IP-5 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lych1o + 1 + OutParameter + + + fr.insee + k1ura6hp-CI-0-IP-6 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lyhlun + 1 + OutParameter + + + fr.insee + k1ura6hp-CI-0-IP-7 + 1 + InParameter + + + k1ura6hp-CI-0-IP-1 != k1ura6hp-CI-0-IP-2 + k1ura6hp-CI-0-IP-3 + k1ura6hp-CI-0-IP-4 + k1ura6hp-CI-0-IP-5 + k1ura6hp-CI-0-IP-6 + k1ura6hp-CI-0-IP-7 + + + + + fr.insee + k1ural1j-CI-0 + 1 + + Somme des salaires du tableau est nulle + + + Somme des salaires du tableau est nulle + + + fr.insee + k1ural1j-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1ural1j-CI-0-IP-1 + 1 + + SALM01 + + + + fr.insee + k1ural1j-CI-0-IP-2 + 1 + + SALM02 + + + + fr.insee + k1ural1j-CI-0-IP-3 + 1 + + SALM03 + + + + fr.insee + k1ural1j-CI-0-IP-4 + 1 + + SALM04 + + + + fr.insee + k1ural1j-CI-0-IP-5 + 1 + + SALM05 + + + + fr.insee + k1ural1j-CI-0-IP-6 + 1 + + SALM06 + + + + fr.insee + k1ural1j-CI-0-IP-7 + 1 + + SALM07 + + + + fr.insee + k1ural1j-CI-0-IP-8 + 1 + + SALM08 + + + + fr.insee + k1ural1j-CI-0-IP-9 + 1 + + SALM09 + + + + fr.insee + k1ural1j-CI-0-IP-10 + 1 + + SALM10 + + + + fr.insee + k1ural1j-CI-0-IP-11 + 1 + + SALM11 + + + + fr.insee + k1ural1j-CI-0-IP-12 + 1 + + SALM12 + + + + + fr.insee + k1ural1j-QOP-k2lyhejc + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2ly9ewk + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-2 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2lxz9y7 + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-3 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2ly3k1l + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-4 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2ly88z1 + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-5 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2lydzyu + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-6 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2lyd96n + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-7 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2ly7zhk + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-8 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2lydaci + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-9 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2lydzvc + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-10 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2ly34d8 + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-11 + 1 + InParameter + + + + + fr.insee + k1ural1j-QOP-k2lyi0rm + 1 + OutParameter + + + fr.insee + k1ural1j-CI-0-IP-12 + 1 + InParameter + + + (k1ural1j-CI-0-IP-1 + k1ural1j-CI-0-IP-2 + k1ural1j-CI-0-IP-3 + k1ural1j-CI-0-IP-4 + k1ural1j-CI-0-IP-5 + k1ural1j-CI-0-IP-6 + k1ural1j-CI-0-IP-7 + k1ural1j-CI-0-IP-8 + k1ural1j-CI-0-IP-9 + k1ural1j-CI-0-IP-10 + k1ural1j-CI-0-IP-11 + k1ural1j-CI-0-IP-12) = 0 + + + + + fr.insee + k0hy7wtn-CI-0 + 1 + + Effectif total vide + + + Effectif total vide + + + fr.insee + k0hy7wtn-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k0hy7wtn-CI-0-IP-1 + 1 + + EFFTOTV2 + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k0hy7wtn-CI-0-IP-1 + 1 + InParameter + + + k0hy7wtn-CI-0-IP-1 = '' + + + + + fr.insee + k0hysdl9-CI-0 + 1 + + Effectif CDD vide + + + Effectif CDD vide + + + fr.insee + k0hysdl9-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k0hysdl9-CI-0-IP-1 + 1 + + EFFCDDV2 + + + + + fr.insee + k0hysdl9-QOP-k0hz55zz + 1 + OutParameter + + + fr.insee + k0hysdl9-CI-0-IP-1 + 1 + InParameter + + + k0hysdl9-CI-0-IP-1 = '' + + + + + fr.insee + k0hysdl9-CI-1 + 1 + + EFF CDD inférieur à EFFTOT + + + EFF CDD inférieur à EFFTOT + + + fr.insee + k0hysdl9-CI-1-II-1 + 1 + Instruction + + warning + + + xpath + + fr.insee + k0hysdl9-CI-1-IP-1 + 1 + + EFFTOTV2 + + + + fr.insee + k0hysdl9-CI-1-IP-2 + 1 + + EFFCDDV2 + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k0hysdl9-CI-1-IP-1 + 1 + InParameter + + + + + fr.insee + k0hysdl9-QOP-k0hz55zz + 1 + OutParameter + + + fr.insee + k0hysdl9-CI-1-IP-2 + 1 + InParameter + + + k0hysdl9-CI-1-IP-2 > k0hysdl9-CI-1-IP-1 + + + + + fr.insee + k1cav4yq-CI-0 + 1 + + Une seule conv coll doit être cochée + + + Une seule conv coll doit être cochée + + + fr.insee + k1cav4yq-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1cav4yq-CI-0-IP-1 + 1 + + NBCOCHE + + + + + fr.insee + k2eje58b-GOP + 1 + OutParameter + + + fr.insee + k1cav4yq-CI-0-IP-1 + 1 + InParameter + + + k1cav4yq-CI-0-IP-1 > 1 + + + + + fr.insee + k1uraed0-CI-0 + 1 + + La somme des effectifs par PCS doit être égale à l'EFFTOT + + + La somme des effectifs par PCS doit être égale à l'EFFTOT + + + fr.insee + k1uraed0-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1uraed0-CI-0-IP-1 + 1 + + EFFTABV2 + + + + fr.insee + k1uraed0-CI-0-IP-2 + 1 + + EFFTOTV2 + + + + + fr.insee + k2aan9fp-GOP + 1 + OutParameter + + + fr.insee + k1uraed0-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k1uraed0-CI-0-IP-2 + 1 + InParameter + + + k1uraed0-CI-0-IP-1 != k1uraed0-CI-0-IP-2 + + + + + fr.insee + k266f9xb-CI-0 + 1 + + La somme des eff par durée n'est pas égale à l'eff tot + + + La somme des eff par durée n'est pas égale à l'eff tot + + + fr.insee + k266f9xb-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k266f9xb-CI-0-IP-1 + 1 + + EFFTOTV2 + + + + fr.insee + k266f9xb-CI-0-IP-2 + 1 + + EFFTPV2 + + + + fr.insee + k266f9xb-CI-0-IP-3 + 1 + + EFFDURFV2 + + + + fr.insee + k266f9xb-CI-0-IP-4 + 1 + + EFFDURT1V2 + + + + fr.insee + k266f9xb-CI-0-IP-5 + 1 + + EFFDURT2V2 + + + + fr.insee + k266f9xb-CI-0-IP-6 + 1 + + EFFDURT3V2 + + + + fr.insee + k266f9xb-CI-0-IP-7 + 1 + + EFFDURT4V2 + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k266f9xb-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k1uqg8k9-QOP-k1uql8iq + 1 + OutParameter + + + fr.insee + k266f9xb-CI-0-IP-2 + 1 + InParameter + + + + + fr.insee + k266rlfn-QOP-k266c5i0 + 1 + OutParameter + + + fr.insee + k266f9xb-CI-0-IP-3 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly2n1h + 1 + OutParameter + + + fr.insee + k266f9xb-CI-0-IP-4 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lybzaz + 1 + OutParameter + + + fr.insee + k266f9xb-CI-0-IP-5 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyd4ep + 1 + OutParameter + + + fr.insee + k266f9xb-CI-0-IP-6 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly02y2 + 1 + OutParameter + + + fr.insee + k266f9xb-CI-0-IP-7 + 1 + InParameter + + + k266f9xb-CI-0-IP-4 + k266f9xb-CI-0-IP-5 + k266f9xb-CI-0-IP-6 + k266f9xb-CI-0-IP-7 + k266f9xb-CI-0-IP-3 + k266f9xb-CI-0-IP-2 != k266f9xb-CI-0-IP-1 + + + + + fr.insee + k1c9e2em-CI-0 + 1 + + Pas de réponse à la question oui/non sur smic + + + Pas de réponse à la question oui/non sur smic + + + fr.insee + k1c9e2em-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1c9e2em-CI-0-IP-1 + 1 + + FILSMIC + + + + + fr.insee + k1c9e2em-QOP-k1c9y1a4 + 1 + OutParameter + + + fr.insee + k1c9e2em-CI-0-IP-1 + 1 + InParameter + + + k1c9e2em-CI-0-IP-1 = '' + + + + + fr.insee + k1c9rr20-CI-0 + 1 + + Effectif smic vide + + + Effectif smic vide + + + fr.insee + k1c9rr20-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1c9rr20-CI-0-IP-1 + 1 + + FILSMIC + + + + fr.insee + k1c9rr20-CI-0-IP-2 + 1 + + EFFSMIC + + + + + fr.insee + k1c9e2em-QOP-k1c9y1a4 + 1 + OutParameter + + + fr.insee + k1c9rr20-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k1c9rr20-QOP-k1c9k5al + 1 + OutParameter + + + fr.insee + k1c9rr20-CI-0-IP-2 + 1 + InParameter + + + k1c9rr20-CI-0-IP-1='1' and k1c9rr20-CI-0-IP-2 = '' + + + + + fr.insee + k24pbhww-CI-0 + 1 + + La somme par nature de contrat est égale au total + + + La somme par nature de contrat est égale au total + + + fr.insee + k24pbhww-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k24pbhww-CI-0-IP-1 + 1 + + EFFSMIC + + + + fr.insee + k24pbhww-CI-0-IP-2 + 1 + + EFFSMICTC + + + + fr.insee + k24pbhww-CI-0-IP-3 + 1 + + EFFSMICTP + + + + + fr.insee + k1c9rr20-QOP-k1c9k5al + 1 + OutParameter + + + fr.insee + k24pbhww-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k24pbhww-QOP-k2lxyxvc + 1 + OutParameter + + + fr.insee + k24pbhww-CI-0-IP-2 + 1 + InParameter + + + + + fr.insee + k24pbhww-QOP-k2lydycm + 1 + OutParameter + + + fr.insee + k24pbhww-CI-0-IP-3 + 1 + InParameter + + + k24pbhww-CI-0-IP-1 != k24pbhww-CI-0-IP-3 + k24pbhww-CI-0-IP-2 + + + + + fr.insee + k24pfxg4-CI-0 + 1 + + La somme des effectifs par sexe est égal au total + + + La somme des effectifs par sexe est égal au total + + + fr.insee + k24pfxg4-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k24pfxg4-CI-0-IP-1 + 1 + + EFFSMIC + + + + fr.insee + k24pfxg4-CI-0-IP-2 + 1 + + EFFSMICF + + + + fr.insee + k24pfxg4-CI-0-IP-3 + 1 + + EFFSMICH + + + + + fr.insee + k1c9rr20-QOP-k1c9k5al + 1 + OutParameter + + + fr.insee + k24pfxg4-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k24pfxg4-QOP-k2lyix6b + 1 + OutParameter + + + fr.insee + k24pfxg4-CI-0-IP-2 + 1 + InParameter + + + + + fr.insee + k24pfxg4-QOP-k2lyb54a + 1 + OutParameter + + + fr.insee + k24pfxg4-CI-0-IP-3 + 1 + InParameter + + + k24pfxg4-CI-0-IP-1 != k24pfxg4-CI-0-IP-2 + k24pfxg4-CI-0-IP-3 + + + + + fr.insee + k1bwzjsr-CI-0 + 1 + + Emp vac vide + + + Emp vac vide + + + fr.insee + k1bwzjsr-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1bwzjsr-CI-0-IP-1 + 1 + + EMPVAC + + + + + fr.insee + k1bwzjsr-QOP-k1bxpipe + 1 + OutParameter + + + fr.insee + k1bwzjsr-CI-0-IP-1 + 1 + InParameter + + + k1bwzjsr-CI-0-IP-1 = '' + + + + + fr.insee + k2dj1xk8-CI-0 + 1 + + NBVAC vide + + + NBVAC vide + + + fr.insee + k2dj1xk8-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k2dj1xk8-CI-0-IP-1 + 1 + + EMPVAC + + + + fr.insee + k2dj1xk8-CI-0-IP-2 + 1 + + NBVAC + + + + + fr.insee + k1bwzjsr-QOP-k1bxpipe + 1 + OutParameter + + + fr.insee + k2dj1xk8-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k2dj1xk8-QOP-k2disena + 1 + OutParameter + + + fr.insee + k2dj1xk8-CI-0-IP-2 + 1 + InParameter + + + k2dj1xk8-CI-0-IP-1='1' and k2dj1xk8-CI-0-IP-2 = '' + + + + + fr.insee + k1c7abcz-CI-0 + 1 + + Somme des empvac différent du total + + + Somme des empvac différent du total + + + fr.insee + k1c7abcz-CI-0-II-0 + 1 + Instruction + + warning + + + xpath + + fr.insee + k1c7abcz-CI-0-IP-1 + 1 + + EMPVAC + + + + fr.insee + k1c7abcz-CI-0-IP-2 + 1 + + NBVAC + + + + fr.insee + k1c7abcz-CI-0-IP-3 + 1 + + NBVACNC + + + + fr.insee + k1c7abcz-CI-0-IP-4 + 1 + + NBVACIN + + + + fr.insee + k1c7abcz-CI-0-IP-5 + 1 + + NBVACOC + + + + + fr.insee + k1bwzjsr-QOP-k1bxpipe + 1 + OutParameter + + + fr.insee + k1c7abcz-CI-0-IP-1 + 1 + InParameter + + + + + fr.insee + k2dj1xk8-QOP-k2disena + 1 + OutParameter + + + fr.insee + k1c7abcz-CI-0-IP-2 + 1 + InParameter + + + + + fr.insee + k1c7abcz-QOP-k2ly75po + 1 + OutParameter + + + fr.insee + k1c7abcz-CI-0-IP-3 + 1 + InParameter + + + + + fr.insee + k1c7abcz-QOP-k2lygv0h + 1 + OutParameter + + + fr.insee + k1c7abcz-CI-0-IP-4 + 1 + InParameter + + + + + fr.insee + k1c7abcz-QOP-k2lxzd84 + 1 + OutParameter + + + fr.insee + k1c7abcz-CI-0-IP-5 + 1 + InParameter + + + (k1c7abcz-CI-0-IP-1 = '1' and k1c7abcz-CI-0-IP-2 != '') and (k1c7abcz-CI-0-IP-4 != '' or k1c7abcz-CI-0-IP-5 != '' or k1c7abcz-CI-0-IP-3 != '') and (k1c7abcz-CI-0-IP-4+k1c7abcz-CI-0-IP-5+k1c7abcz-CI-0-IP-3) != k1c7abcz-CI-0-IP-2 + + + + + fr.insee + k266eqvz-SI + 1 + + + Pour les salariés à temps complet + + + + + fr.insee + k266hmw0-SI + 1 + + + Pour les salariés à temps partiel + + + + + fr.insee + k2en57pz-SI + 1 + + + Pour les salariés à temps complet + + + + + fr.insee + k1bvkd1w-SI + 1 + + + Pour les salariés à temps partiel + + + + + + fr.insee + QuestionScheme-k0hy96wtbis + 1 + + A définir + + + fr.insee + k239vtgh + 1 + + EFFTOT + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + + EFFTOT + + + + + fr.insee + k239vtgh-RDOP-k239l9jm + 1 + OutParameter + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + OutParameter + + + + + Effectif total de salariés ayant un contrat de travail avec l'¤CONCERN2¤ au ¤REFER¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k239vtgh-RDOP-k239l9jm + 1 + + + + fr.insee + k239n0ob + 1 + Instruction + + + fr.insee + k2di7o8m + 1 + Instruction + + + + fr.insee + k239s65r + 1 + + EFFCDD + + + fr.insee + k239s65r-QOP-k239u802 + 1 + + EFFCDD + + + + + fr.insee + k239s65r-RDOP-k239u802 + 1 + OutParameter + + + fr.insee + k239s65r-QOP-k239u802 + 1 + OutParameter + + + + + Parmi cet effectif total, distinguez les salariés en CDD au ¤REFER¤ : + + + + + 0 + 99999 + + Decimal + + fr.insee + k239s65r-RDOP-k239u802 + 1 + + + + + fr.insee + k266tqxw + 1 + + EFFTP + + + fr.insee + k266tqxw-QOP-k266s9np + 1 + + EFFTP + + + + + fr.insee + k266tqxw-RDOP-k266s9np + 1 + OutParameter + + + fr.insee + k266tqxw-QOP-k266s9np + 1 + OutParameter + + + + + Indiquez l'effectif de salariés à temps partiel au ¤REFER¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k266tqxw-RDOP-k266s9np + 1 + + + + + fr.insee + k1uqp04a + 1 + + EFFJOURF + + + fr.insee + k1uqp04a-QOP-k1urc3ep + 1 + + EFFDURF + + + + + fr.insee + k1uqp04a-RDOP-k1urc3ep + 1 + OutParameter + + + fr.insee + k1uqp04a-QOP-k1urc3ep + 1 + OutParameter + + + + + Indiquez l'effectif de salariés au forfait en nombre de jours par an au ¤REFER¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uqp04a-RDOP-k1urc3ep + 1 + + + + + fr.insee + k266ti4w + 1 + + HEUSUP + + + fr.insee + k266ti4w-QOP-k266nvmo + 1 + + HEURSUP + + + + + fr.insee + k266ti4w-RDOP-k266nvmo + 1 + OutParameter + + + fr.insee + k266ti4w-QOP-k266nvmo + 1 + OutParameter + + + + + Nombre total d'heures supplémentaires au ¤TRIM¤ : + + + + + 0 + 99999999 + + Decimal + + fr.insee + k266ti4w-RDOP-k266nvmo + 1 + + + + + fr.insee + k266ghuf + 1 + + EFFHEURSUP + + + fr.insee + k266ghuf-QOP-k266x73i + 1 + + EFFHSUP + + + + + fr.insee + k266ghuf-RDOP-k266x73i + 1 + OutParameter + + + fr.insee + k266ghuf-QOP-k266x73i + 1 + OutParameter + + + + + Effectif de salariés concernés par les heures supplémentaires au ¤TRIM¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k266ghuf-RDOP-k266x73i + 1 + + + + fr.insee + k266gxte + 1 + Instruction + + + + fr.insee + k2670ijx + 1 + + HEURCOMP + + + fr.insee + k2670ijx-QOP-k266ulz5 + 1 + + HEURCOMP + + + + + fr.insee + k2670ijx-RDOP-k266ulz5 + 1 + OutParameter + + + fr.insee + k2670ijx-QOP-k266ulz5 + 1 + OutParameter + + + + + Nombre total d'heures complémentaires au ¤TRIM¤ : + + + + + 0 + 99999999 + + Decimal + + fr.insee + k2670ijx-RDOP-k266ulz5 + 1 + + + + + fr.insee + k0hy7wtn + 1 + + EFFTOTV2 + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + + EFFTOTV2 + + + + + fr.insee + k0hy7wtn-RDOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + + + Effectif total de salariés ayant un contrat de travail avec l'¤CONCERN2¤ au ¤REFER¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k0hy7wtn-RDOP-k0hyyec6 + 1 + + + + fr.insee + k1c2mr9o + 1 + Instruction + + + fr.insee + k2dilez6 + 1 + Instruction + + + + fr.insee + k0hysdl9 + 1 + + EFFCDDV2 + + + fr.insee + k0hysdl9-QOP-k0hz55zz + 1 + + EFFCDDV2 + + + + + fr.insee + k0hysdl9-RDOP-k0hz55zz + 1 + OutParameter + + + fr.insee + k0hysdl9-QOP-k0hz55zz + 1 + OutParameter + + + + + Parmi cet effectif total, distinguez les salariés CDD au ¤REFER¤ : + + + + + 0 + 99999 + + Decimal + + fr.insee + k0hysdl9-RDOP-k0hz55zz + 1 + + + + + fr.insee + k2dhpix8 + 1 + + AUTRECONVCOLLV2 + + + fr.insee + k2dhpix8-QOP-k2dj48a21 + 1 + + IDCCCORRV2 + + + + fr.insee + k2dhpix8-QOP-k2dj48a22 + 1 + + CONVCOLLCORRV2 + + + + + fr.insee + k2dhpix8-RDOP-k2dj48a21 + 1 + OutParameter + + + fr.insee + k2dhpix8-QOP-k2dj48a21 + 1 + OutParameter + + + + + fr.insee + k2dhpix8-RDOP-k2dj48a22 + 1 + OutParameter + + + fr.insee + k2dhpix8-QOP-k2dj48a22 + 1 + OutParameter + + + + + Quelle convention collective, convention d'entreprise ou d'établissement ou statut appliquez-vous de façon principale ? + + + + + + + fr.insee + k2dhpix8-RDOP-k2dj48a21 + 0.1.0 + + + + + + + + fr.insee + k2dhpix8-RDOP-k2dj48a22 + 0.1.0 + + + + + + + + fr.insee + k1uqg8k9 + 1 + + EFFTPV2 + + + fr.insee + k1uqg8k9-QOP-k1uql8iq + 1 + + EFFTPV2 + + + + + fr.insee + k1uqg8k9-RDOP-k1uql8iq + 1 + OutParameter + + + fr.insee + k1uqg8k9-QOP-k1uql8iq + 1 + OutParameter + + + + + Indiquez l'effectif de salariés à temps partiel au ¤REFER¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uqg8k9-RDOP-k1uql8iq + 1 + + + + + fr.insee + k266rlfn + 1 + + EFFJOURFV2 + + + fr.insee + k266rlfn-QOP-k266c5i0 + 1 + + EFFDURFV2 + + + + + fr.insee + k266rlfn-RDOP-k266c5i0 + 1 + OutParameter + + + fr.insee + k266rlfn-QOP-k266c5i0 + 1 + OutParameter + + + + + Indiquez l'effectif de salariés au forfait en nombre de jours par an au ¤REFER¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k266rlfn-RDOP-k266c5i0 + 1 + + + + + fr.insee + k1bv09kz + 1 + + HEUSUPV2 + + + fr.insee + k1bv09kz-QOP-k1bvq05b + 1 + + HEURSUPV2 + + + + + fr.insee + k1bv09kz-RDOP-k1bvq05b + 1 + OutParameter + + + fr.insee + k1bv09kz-QOP-k1bvq05b + 1 + OutParameter + + + + + Nombre total d'heures supplémentaires au ¤TRIM¤ + + + + + 0 + 99999999 + + Decimal + + fr.insee + k1bv09kz-RDOP-k1bvq05b + 1 + + + + + fr.insee + k1buzukh + 1 + + EFFHSUPV2 + + + fr.insee + k1buzukh-QOP-k1bvm3md + 1 + + EFFHSUPV2 + + + + + fr.insee + k1buzukh-RDOP-k1bvm3md + 1 + OutParameter + + + fr.insee + k1buzukh-QOP-k1bvm3md + 1 + OutParameter + + + + + Effectif de salariés concernés par les heures supplémentaires au ¤TRIM¤ : + + + + + 0 + 999999 + + Decimal + + fr.insee + k1buzukh-RDOP-k1bvm3md + 1 + + + + fr.insee + k1bv657e + 1 + Instruction + + + + fr.insee + k1bv6jho + 1 + + HEURCOMPV2 + + + fr.insee + k1bv6jho-QOP-k1bvgm31 + 1 + + HEURCOMPV2 + + + + + fr.insee + k1bv6jho-RDOP-k1bvgm31 + 1 + OutParameter + + + fr.insee + k1bv6jho-QOP-k1bvgm31 + 1 + OutParameter + + + + + Nombre total d'heures complémentaires au ¤TRIM¤ : + + + + + 0 + 99999999 + + Decimal + + fr.insee + k1bv6jho-RDOP-k1bvgm31 + 1 + + + + + fr.insee + k1c7k8tv + 1 + + NBAPP + + + fr.insee + k1c7k8tv-QOP-k1c7xo1f + 1 + + EFFAPP + + + + + fr.insee + k1c7k8tv-RDOP-k1c7xo1f + 1 + OutParameter + + + fr.insee + k1c7k8tv-QOP-k1c7xo1f + 1 + OutParameter + + + + + Indiquez le nombre d'apprentis employés dans votre ¤CONCERN2¤ au ¤DATE2¤ : + + + + + 0 + 99999 + + Decimal + + fr.insee + k1c7k8tv-RDOP-k1c7xo1f + 1 + + + + + fr.insee + k1c9e2em + 1 + + BENEFSMIC + + + fr.insee + k1c9e2em-QOP-k1c9y1a4 + 1 + + FILSMIC + + + + + fr.insee + k1c9e2em-RDOP-k1c9y1a4 + 1 + OutParameter + + + fr.insee + k1c9e2em-QOP-k1c9y1a4 + 1 + OutParameter + + + + + Parmi votre effectif total hors apprentis au ¤DATE2¤, certains salariés ont-ils bénéficié directement de la revalorisation du Smic au ¤DATE1BIS¤ ? + + + + checkbox + + fr.insee + k1bxcxuy + 1 + CodeList + + + fr.insee + k1c9e2em-RDOP-k1c9y1a4 + 1 + + + fr.insee + k1bxcxuy + 1 + CodeList + + + + + + + + fr.insee + k24pkndo + 1 + + + + Si non convcoll pour V3 et emplois vacants pour V2 + $FILSMIC$ = '0' + k1bwzjsr + + + + + + + fr.insee + k1c9l6y5 + 1 + Instruction + + + + fr.insee + k1c9rr20 + 1 + + EFFREVALSMIC + + + fr.insee + k1c9rr20-QOP-k1c9k5al + 1 + + EFFSMIC + + + + + fr.insee + k1c9rr20-RDOP-k1c9k5al + 1 + OutParameter + + + fr.insee + k1c9rr20-QOP-k1c9k5al + 1 + OutParameter + + + + + Indiquez l'effectif de salariés (hors apprentis) concernés par la revalorisation du Smic au ¤DATE1BIS¤ : + + + + + 0 + 99999 + + Decimal + + fr.insee + k1c9rr20-RDOP-k1c9k5al + 1 + + + + + fr.insee + k1bwzjsr + 1 + + AVEZVOUSDE + + + fr.insee + k1bwzjsr-QOP-k1bxpipe + 1 + + EMPVAC + + + + + fr.insee + k1bwzjsr-RDOP-k1bxpipe + 1 + OutParameter + + + fr.insee + k1bwzjsr-QOP-k1bxpipe + 1 + OutParameter + + + + + Avez-vous des emplois pour lesquels vous entreprenez des démarches actives de recherche d'un candidat, à l'extérieur de votre ¤CONCERN2¤ ? + + + + checkbox + + fr.insee + k1bxcxuy + 1 + CodeList + + + fr.insee + k1bwzjsr-RDOP-k1bxpipe + 1 + + + fr.insee + k1bxcxuy + 1 + CodeList + + + + + + + + fr.insee + k24qoxg9 + 1 + + + + Si non fin pour V1 et V2, reval smic pour V3 + $EMPVAC$ = '0' + k1ca4yip + + + + + + + fr.insee + k1by2q6c + 1 + Instruction + + + + fr.insee + k2dj1xk8 + 1 + + NBVACTOT + + + fr.insee + k2dj1xk8-QOP-k2disena + 1 + + NBVAC + + + + + fr.insee + k2dj1xk8-RDOP-k2disena + 1 + OutParameter + + + fr.insee + k2dj1xk8-QOP-k2disena + 1 + OutParameter + + + + + Indiquez le nombre total de ces emplois : + + + + + 0 + 9999 + + Decimal + + fr.insee + k2dj1xk8-RDOP-k2disena + 1 + + + + + fr.insee + k1ca4y9c + 1 + + CONVPRINC + + + fr.insee + k1ca4y9c-QOP-k1ca8upj + 1 + + CONVPRINC + + + + + fr.insee + k1ca4y9c-RDOP-k1ca8upj + 1 + OutParameter + + + fr.insee + k1ca4y9c-QOP-k1ca8upj + 1 + OutParameter + + + + + Indiquez votre situation au regard de la convention suivante : ¤IDCC¤ - ¤CONVCOLL¤ + + + + checkbox + + fr.insee + k1c9zo2z + 1 + CodeList + + + fr.insee + k1ca4y9c-RDOP-k1ca8upj + 1 + + + fr.insee + k1c9zo2z + 1 + CodeList + + + + + + + + fr.insee + k2gdsifk + 1 + + + + On affiche la deuxième question que si la modalité autre est cochée + $CONVPRINC$ != 'CONVCOLLAUTR' + k1q84oqu + + + + + + + fr.insee + k2dhp3ob + 1 + Instruction + + + + fr.insee + k1ca9e2p + 1 + + AUTRECONVCOLLV3 + + + fr.insee + k1ca9e2p-QOP-k2dj358p1 + 1 + + IDCCCORR + + + + fr.insee + k1ca9e2p-QOP-k2dj358p2 + 1 + + CONVCOLLCORR + + + + + fr.insee + k1ca9e2p-RDOP-k2dj358p1 + 1 + OutParameter + + + fr.insee + k1ca9e2p-QOP-k2dj358p1 + 1 + OutParameter + + + + + fr.insee + k1ca9e2p-RDOP-k2dj358p2 + 1 + OutParameter + + + fr.insee + k1ca9e2p-QOP-k2dj358p2 + 1 + OutParameter + + + + + Quelle convention collective, convention d'entreprise ou d'établissement ou statut appliquez-vous de façon principale (code IDCC et libellé) ? + + + + + + + fr.insee + k1ca9e2p-RDOP-k2dj358p1 + 0.1.0 + + + + + + + + fr.insee + k1ca9e2p-RDOP-k2dj358p2 + 0.1.0 + + + + + + + + fr.insee + k1ura6hp + 1 + + EFFDUR + + + fr.insee + k1ura6hp-QOP-k2ly3rxl + 1 + + DURTRIM1 + + + + fr.insee + k1ura6hp-QOP-k2ly8l2o + 1 + + DURTRIM2 + + + + fr.insee + k1ura6hp-QOP-k2lyj3ty + 1 + + DURTRIM3 + + + + fr.insee + k1ura6hp-QOP-k2ly3oqc + 1 + + DURTRIM4 + + + + fr.insee + k1ura6hp-QOP-k2ly30pv + 1 + + EFFDURT1 + + + + fr.insee + k1ura6hp-QOP-k2lygkxt + 1 + + EFFDURT2 + + + + fr.insee + k1ura6hp-QOP-k2lych1o + 1 + + EFFDURT3 + + + + fr.insee + k1ura6hp-QOP-k2lyhlun + 1 + + EFFDURT4 + + + + + fr.insee + k1ura6hp-RDOP-k2ly3rxl + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2ly3rxl + 1 + OutParameter + + + + + fr.insee + k1ura6hp-RDOP-k2ly8l2o + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2ly8l2o + 1 + OutParameter + + + + + fr.insee + k1ura6hp-RDOP-k2lyj3ty + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2lyj3ty + 1 + OutParameter + + + + + fr.insee + k1ura6hp-RDOP-k2ly3oqc + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2ly3oqc + 1 + OutParameter + + + + + fr.insee + k1ura6hp-RDOP-k2ly30pv + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2ly30pv + 1 + OutParameter + + + + + fr.insee + k1ura6hp-RDOP-k2lygkxt + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2lygkxt + 1 + OutParameter + + + + + fr.insee + k1ura6hp-RDOP-k2lych1o + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2lych1o + 1 + OutParameter + + + + + fr.insee + k1ura6hp-RDOP-k2lyhlun + 1 + OutParameter + + + fr.insee + k1ura6hp-QOP-k2lyhlun + 1 + OutParameter + + + + + Pour vos salariés à temps complet (hors forfait en jours), indiquez la durée collective hebdomadaire habituelle de travail (en moyenne sur l'année en cas d'annualisation ou de jours de RTT) et l'effectif concerné par cette durée : + + + + + + fr.insee + k1ur4irc + 1 + CodeList + + + + + + + fr.insee + k1ura6hp-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k1ura6hp-RDOP-k2ly3rxl + 1 + + + + + + + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k1ura6hp-RDOP-k2ly8l2o + 1 + + + + + + + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k1ura6hp-RDOP-k2lyj3ty + 1 + + + + + + + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k1ura6hp-RDOP-k2ly3oqc + 1 + + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1ura6hp-RDOP-k2ly30pv + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1ura6hp-RDOP-k2lygkxt + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1ura6hp-RDOP-k2lych1o + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1ura6hp-RDOP-k2lyhlun + 1 + + + + + + + + + + + + fr.insee + k1ur2r0d + 1 + Instruction + + + fr.insee + k1urfffx + 1 + Instruction + + + + fr.insee + k1ural1j + 1 + + TABSALAIRESV3 + + + fr.insee + k1ural1j-QOP-k2ly2bcl + 1 + + LIBEMP01 + + + + fr.insee + k1ural1j-QOP-k2ly7fbz + 1 + + LIBEMP02 + + + + fr.insee + k1ural1j-QOP-k2ly2abp + 1 + + LIBEMP03 + + + + fr.insee + k1ural1j-QOP-k2ly3f3a + 1 + + LIBEMP04 + + + + fr.insee + k1ural1j-QOP-k2ly7s3e + 1 + + LIBEMP05 + + + + fr.insee + k1ural1j-QOP-k2lygu16 + 1 + + LIBEMP06 + + + + fr.insee + k1ural1j-QOP-k2lxzxm8 + 1 + + LIBEMP07 + + + + fr.insee + k1ural1j-QOP-k2ly08xm + 1 + + LIBEMP08 + + + + fr.insee + k1ural1j-QOP-k2lygxn1 + 1 + + LIBEMP09 + + + + fr.insee + k1ural1j-QOP-k2lxz47h + 1 + + LIBEMP10 + + + + fr.insee + k1ural1j-QOP-k2ly2umg + 1 + + LIBEMP11 + + + + fr.insee + k1ural1j-QOP-k2lxz623 + 1 + + LIBEMP12 + + + + fr.insee + k1ural1j-QOP-k2lyj33d + 1 + + COEF01 + + + + fr.insee + k1ural1j-QOP-k2ly70vz + 1 + + COEF02 + + + + fr.insee + k1ural1j-QOP-k2lyj6gq + 1 + + COEF03 + + + + fr.insee + k1ural1j-QOP-k2ly7m2f + 1 + + COEF04 + + + + fr.insee + k1ural1j-QOP-k2lyic6g + 1 + + COEF05 + + + + fr.insee + k1ural1j-QOP-k2ly82x7 + 1 + + COEF06 + + + + fr.insee + k1ural1j-QOP-k2lyhltd + 1 + + COEF07 + + + + fr.insee + k1ural1j-QOP-k2ly73uw + 1 + + COEF08 + + + + fr.insee + k1ural1j-QOP-k2lygxiy + 1 + + COEF09 + + + + fr.insee + k1ural1j-QOP-k2lyc23p + 1 + + COEF10 + + + + fr.insee + k1ural1j-QOP-k2lyaieb + 1 + + COEF11 + + + + fr.insee + k1ural1j-QOP-k2ly4wms + 1 + + COEF12 + + + + fr.insee + k1ural1j-QOP-k2lyhejc + 1 + + SALM01 + + + + fr.insee + k1ural1j-QOP-k2ly9ewk + 1 + + SALM02 + + + + fr.insee + k1ural1j-QOP-k2lxz9y7 + 1 + + SALM03 + + + + fr.insee + k1ural1j-QOP-k2ly3k1l + 1 + + SALM04 + + + + fr.insee + k1ural1j-QOP-k2ly88z1 + 1 + + SALM05 + + + + fr.insee + k1ural1j-QOP-k2lydzyu + 1 + + SALM06 + + + + fr.insee + k1ural1j-QOP-k2lyd96n + 1 + + SALM07 + + + + fr.insee + k1ural1j-QOP-k2ly7zhk + 1 + + SALM08 + + + + fr.insee + k1ural1j-QOP-k2lydaci + 1 + + SALM09 + + + + fr.insee + k1ural1j-QOP-k2lydzvc + 1 + + SALM10 + + + + fr.insee + k1ural1j-QOP-k2ly34d8 + 1 + + SALM11 + + + + fr.insee + k1ural1j-QOP-k2lyi0rm + 1 + + SALM12 + + + + fr.insee + k1ural1j-QOP-k2ly9xks + 1 + + HORM01 + + + + fr.insee + k1ural1j-QOP-k2ly1q2d + 1 + + HORM02 + + + + fr.insee + k1ural1j-QOP-k2lyh1do + 1 + + HORM03 + + + + fr.insee + k1ural1j-QOP-k2lxz4ge + 1 + + HORM04 + + + + fr.insee + k1ural1j-QOP-k2lxzlu9 + 1 + + HORM05 + + + + fr.insee + k1ural1j-QOP-k2lyaba2 + 1 + + HORM06 + + + + fr.insee + k1ural1j-QOP-k2ly26dv + 1 + + HORM07 + + + + fr.insee + k1ural1j-QOP-k2lyd6l7 + 1 + + HORM08 + + + + fr.insee + k1ural1j-QOP-k2ly6qlp + 1 + + HORM09 + + + + fr.insee + k1ural1j-QOP-k2ly3c6l + 1 + + HORM10 + + + + fr.insee + k1ural1j-QOP-k2ly14re + 1 + + HORM11 + + + + fr.insee + k1ural1j-QOP-k2lyhpvl + 1 + + HORM12 + + + + + fr.insee + k1ural1j-RDOP-k2ly2bcl + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly2bcl + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly7fbz + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly7fbz + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly2abp + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly2abp + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly3f3a + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly3f3a + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly7s3e + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly7s3e + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lygu16 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lygu16 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lxzxm8 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lxzxm8 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly08xm + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly08xm + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lygxn1 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lygxn1 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lxz47h + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lxz47h + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly2umg + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly2umg + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lxz623 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lxz623 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyj33d + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyj33d + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly70vz + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly70vz + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyj6gq + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyj6gq + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly7m2f + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly7m2f + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyic6g + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyic6g + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly82x7 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly82x7 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyhltd + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyhltd + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly73uw + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly73uw + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lygxiy + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lygxiy + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyc23p + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyc23p + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyaieb + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyaieb + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly4wms + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly4wms + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyhejc + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyhejc + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly9ewk + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly9ewk + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lxz9y7 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lxz9y7 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly3k1l + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly3k1l + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly88z1 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly88z1 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lydzyu + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lydzyu + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyd96n + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyd96n + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly7zhk + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly7zhk + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lydaci + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lydaci + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lydzvc + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lydzvc + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly34d8 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly34d8 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyi0rm + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyi0rm + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly9xks + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly9xks + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly1q2d + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly1q2d + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyh1do + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyh1do + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lxz4ge + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lxz4ge + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lxzlu9 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lxzlu9 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyaba2 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyaba2 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly26dv + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly26dv + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyd6l7 + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyd6l7 + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly6qlp + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly6qlp + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly3c6l + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly3c6l + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2ly14re + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2ly14re + 1 + OutParameter + + + + + fr.insee + k1ural1j-RDOP-k2lyhpvl + 1 + OutParameter + + + fr.insee + k1ural1j-QOP-k2lyhpvl + 1 + OutParameter + + + + + Veuillez compléter le tableau ci-dessous en indiquant pour chaque poste de travail retenu le salaire mensuel de base brut et l'horaire mensuel de base du salarié suivi. + + + + + + fr.insee + k1ur63h9 + 1 + CodeList + + + + + + + fr.insee + k1ural1j-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly2bcl + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly7fbz + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly2abp + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly3f3a + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly7s3e + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lygu16 + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lxzxm8 + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly08xm + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lygxn1 + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lxz47h + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly2umg + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lxz623 + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lyj33d + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly70vz + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lyj6gq + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly7m2f + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lyic6g + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly82x7 + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lyhltd + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly73uw + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lygxiy + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lyc23p + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2lyaieb + 1 + + + + + + + + + + + + + + fr.insee + k1ural1j-RDOP-k2ly4wms + 1 + + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lyhejc + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly9ewk + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lxz9y7 + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly3k1l + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly88z1 + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lydzyu + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lyd96n + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly7zhk + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lydaci + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lydzvc + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly34d8 + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lyi0rm + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly9xks + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly1q2d + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lyh1do + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lxz4ge + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lxzlu9 + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lyaba2 + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly26dv + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lyd6l7 + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly6qlp + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly3c6l + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2ly14re + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1ural1j-RDOP-k2lyhpvl + 1 + + + + + + + + + + + + fr.insee + k1urk37m + 1 + Instruction + + + fr.insee + k1urgxks + 1 + Instruction + + + fr.insee + k265pxao + 1 + Instruction + + + fr.insee + k265cxci + 1 + Instruction + + + fr.insee + k265wc09 + 1 + Instruction + + + fr.insee + k265lhyl + 1 + Instruction + + + + fr.insee + k1cav4yq + 1 + + TABCONVCOLL + + + + fr.insee + k1cav4yq-QOP-k2ly70ug + 1 + + ESTCOCHE1 + + + + fr.insee + k1cav4yq-QOP-k2lyatvp + 1 + + ESTCOCHE2 + + + + fr.insee + k1cav4yq-QOP-k2lyifac + 1 + + ESTCOCHE3 + + + + + + fr.insee + k1cav4yq-RDOP-k2ly70ug + 1 + OutParameter + + + fr.insee + k1cav4yq-QOP-k2ly70ug + 1 + OutParameter + + + + + fr.insee + k1cav4yq-RDOP-k2lyatvp + 1 + OutParameter + + + fr.insee + k1cav4yq-QOP-k2lyatvp + 1 + OutParameter + + + + + fr.insee + k1cav4yq-RDOP-k2lyifac + 1 + OutParameter + + + fr.insee + k1cav4yq-QOP-k2lyifac + 1 + OutParameter + + + + + Dans le tableau ci-dessous, veuillez cocher la convention que vous appliquez de façon principale (si elle s’y trouve). + + + + + + fr.insee + k2ehm3ij + 1 + CodeList + + + + + + + fr.insee + k1cav4yq-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fr.insee + k1cav4yq-RDOP-k2ly70ug + 1 + + + + + fr.insee + INSEE-COMMUN-CL-Booleen-1 + 1 + Code + + + + + + + + + + + + + + + + + + + fr.insee + k1cav4yq-RDOP-k2lyatvp + 1 + + + + + fr.insee + INSEE-COMMUN-CL-Booleen-1 + 1 + Code + + + + + + + + + + + + + + + + + + + fr.insee + k1cav4yq-RDOP-k2lyifac + 1 + + + + + fr.insee + INSEE-COMMUN-CL-Booleen-1 + 1 + Code + + + + + + + + + + + + + + + + + + ¤IDCC1¤ + + + + + + + + + ¤IDCC2¤ + + + + + + + + + ¤IDCC3¤ + + + + + + + + + ¤CONVCOLL1¤ + + + + + + + + + ¤CONVCOLL2¤ + + + + + + + + + ¤CONVCOLL3¤ + + + + + + + + + + fr.insee + k2ejjfdb + 1 + + + + Si au moins une case est cochée en question 3, la question 4 est filtrée + $NBCOCHE$ > 0 + k1urppgo + + + + + + + fr.insee + k2dhl92n + 1 + Instruction + + + + fr.insee + k1uraed0 + 1 + + TABSALAIRESV2 + + + fr.insee + k1uraed0-QOP-k2ly52bo + 1 + + EFF01V2 + + + + fr.insee + k1uraed0-QOP-k2ly6djw + 1 + + EFF02V2 + + + + fr.insee + k1uraed0-QOP-k2ly71jj + 1 + + EFF03V2 + + + + fr.insee + k1uraed0-QOP-k2lycks7 + 1 + + EFF04V2 + + + + fr.insee + k1uraed0-QOP-k2ly1q7e + 1 + + EFF05V2 + + + + fr.insee + k1uraed0-QOP-k2lya761 + 1 + + EFF06V2 + + + + fr.insee + k1uraed0-QOP-k2lyakk8 + 1 + + EFF07V2 + + + + fr.insee + k1uraed0-QOP-k2ly0k67 + 1 + + EFF08V2 + + + + fr.insee + k1uraed0-QOP-k2lyh5b5 + 1 + + EFF09V2 + + + + fr.insee + k1uraed0-QOP-k2lyfnfl + 1 + + EFF10V2 + + + + fr.insee + k1uraed0-QOP-k2lxzuhy + 1 + + EFF11V2 + + + + fr.insee + k1uraed0-QOP-k2ly7rox + 1 + + EFF12V2 + + + + fr.insee + k1uraed0-QOP-k2lyfx7m + 1 + + LIBEMP01V2 + + + + fr.insee + k1uraed0-QOP-k2ly9yhz + 1 + + LIBEMP02V2 + + + + fr.insee + k1uraed0-QOP-k2ly0671 + 1 + + LIBEMP03V2 + + + + fr.insee + k1uraed0-QOP-k2ly5e7d + 1 + + LIBEMP04V2 + + + + fr.insee + k1uraed0-QOP-k2ly84fd + 1 + + LIBEMP05V2 + + + + fr.insee + k1uraed0-QOP-k2lyielg + 1 + + LIBEMP06V2 + + + + fr.insee + k1uraed0-QOP-k2ly8mre + 1 + + LIBEMP07V2 + + + + fr.insee + k1uraed0-QOP-k2lyj8dr + 1 + + LIBEMP08V2 + + + + fr.insee + k1uraed0-QOP-k2ly9vlq + 1 + + LIBEMP09V2 + + + + fr.insee + k1uraed0-QOP-k2ly0ol2 + 1 + + LIBEMP10V2 + + + + fr.insee + k1uraed0-QOP-k2lyjtav + 1 + + LIBEMP11V2 + + + + fr.insee + k1uraed0-QOP-k2ly7f13 + 1 + + LIBEMP12V2 + + + + fr.insee + k1uraed0-QOP-k2ly7gdm + 1 + + COEF01V2 + + + + fr.insee + k1uraed0-QOP-k2ly4795 + 1 + + COEF02V2 + + + + fr.insee + k1uraed0-QOP-k2ly6nba + 1 + + COEF03V2 + + + + fr.insee + k1uraed0-QOP-k2ly32n9 + 1 + + COEF04V2 + + + + fr.insee + k1uraed0-QOP-k2lyjhqf + 1 + + COEF05V2 + + + + fr.insee + k1uraed0-QOP-k2ly2wq9 + 1 + + COEF06V2 + + + + fr.insee + k1uraed0-QOP-k2lxzyoo + 1 + + COEF07V2 + + + + fr.insee + k1uraed0-QOP-k2lyc08t + 1 + + COEF08V2 + + + + fr.insee + k1uraed0-QOP-k2lyjtq0 + 1 + + COEF09V2 + + + + fr.insee + k1uraed0-QOP-k2ly2kob + 1 + + COEF10V2 + + + + fr.insee + k1uraed0-QOP-k2lyg3g3 + 1 + + COEF11V2 + + + + fr.insee + k1uraed0-QOP-k2ly1twp + 1 + + COEF12V2 + + + + fr.insee + k1uraed0-QOP-k2lxzxrz + 1 + + SALM01V2 + + + + fr.insee + k1uraed0-QOP-k2ly6dxe + 1 + + SALM02V2 + + + + fr.insee + k1uraed0-QOP-k2ly4hno + 1 + + SALM03V2 + + + + fr.insee + k1uraed0-QOP-k2lybbjm + 1 + + SALM04V2 + + + + fr.insee + k1uraed0-QOP-k2lygwnx + 1 + + SALM05V2 + + + + fr.insee + k1uraed0-QOP-k2lyelje + 1 + + SALM06V2 + + + + fr.insee + k1uraed0-QOP-k2lyh0cs + 1 + + SALM07V2 + + + + fr.insee + k1uraed0-QOP-k2ly7mhn + 1 + + SALM08V2 + + + + fr.insee + k1uraed0-QOP-k2lye718 + 1 + + SALM09V2 + + + + fr.insee + k1uraed0-QOP-k2ly8l03 + 1 + + SALM10V2 + + + + fr.insee + k1uraed0-QOP-k2ly5ei8 + 1 + + SALM11V2 + + + + fr.insee + k1uraed0-QOP-k2lyglu4 + 1 + + SALM12V2 + + + + fr.insee + k1uraed0-QOP-k2ly8hpa + 1 + + HORM01V2 + + + + fr.insee + k1uraed0-QOP-k2ly995p + 1 + + HORM02V2 + + + + fr.insee + k1uraed0-QOP-k2ly80mv + 1 + + HORM03V2 + + + + fr.insee + k1uraed0-QOP-k2lyb1n5 + 1 + + HORM04V2 + + + + fr.insee + k1uraed0-QOP-k2lycnzq + 1 + + HORM05V2 + + + + fr.insee + k1uraed0-QOP-k2ly87ow + 1 + + HORM06V2 + + + + fr.insee + k1uraed0-QOP-k2ly5nue + 1 + + HORM07V2 + + + + fr.insee + k1uraed0-QOP-k2ly530g + 1 + + HORM08V2 + + + + fr.insee + k1uraed0-QOP-k2ly5ok6 + 1 + + HORM09V2 + + + + fr.insee + k1uraed0-QOP-k2ly1xvk + 1 + + HORM10V2 + + + + fr.insee + k1uraed0-QOP-k2lygwdm + 1 + + HORM11V2 + + + + fr.insee + k1uraed0-QOP-k2lydgec + 1 + + HORM12V2 + + + + + fr.insee + k1uraed0-RDOP-k2ly52bo + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly52bo + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly6djw + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly6djw + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly71jj + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly71jj + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lycks7 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lycks7 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly1q7e + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly1q7e + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lya761 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lya761 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyakk8 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyakk8 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly0k67 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly0k67 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyh5b5 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyh5b5 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyfnfl + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyfnfl + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lxzuhy + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lxzuhy + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly7rox + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly7rox + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyfx7m + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyfx7m + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly9yhz + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly9yhz + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly0671 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly0671 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly5e7d + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly5e7d + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly84fd + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly84fd + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyielg + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyielg + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly8mre + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly8mre + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyj8dr + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyj8dr + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly9vlq + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly9vlq + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly0ol2 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly0ol2 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyjtav + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyjtav + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly7f13 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly7f13 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly7gdm + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly7gdm + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly4795 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly4795 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly6nba + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly6nba + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly32n9 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly32n9 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyjhqf + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyjhqf + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly2wq9 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly2wq9 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lxzyoo + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lxzyoo + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyc08t + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyc08t + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyjtq0 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyjtq0 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly2kob + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly2kob + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyg3g3 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyg3g3 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly1twp + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly1twp + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lxzxrz + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lxzxrz + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly6dxe + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly6dxe + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly4hno + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly4hno + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lybbjm + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lybbjm + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lygwnx + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lygwnx + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyelje + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyelje + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyh0cs + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyh0cs + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly7mhn + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly7mhn + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lye718 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lye718 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly8l03 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly8l03 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly5ei8 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly5ei8 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyglu4 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyglu4 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly8hpa + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly8hpa + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly995p + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly995p + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly80mv + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly80mv + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lyb1n5 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lyb1n5 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lycnzq + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lycnzq + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly87ow + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly87ow + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly5nue + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly5nue + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly530g + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly530g + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly5ok6 + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly5ok6 + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2ly1xvk + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2ly1xvk + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lygwdm + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lygwdm + 1 + OutParameter + + + + + fr.insee + k1uraed0-RDOP-k2lydgec + 1 + OutParameter + + + fr.insee + k1uraed0-QOP-k2lydgec + 1 + OutParameter + + + + + Veuillez remplir le tableau en fonction des consignes ci-dessous : + + + + + + fr.insee + k1ur63h9 + 1 + CodeList + + + + + + + fr.insee + k1uraed0-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly52bo + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly6djw + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly71jj + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lycks7 + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly1q7e + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lya761 + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lyakk8 + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly0k67 + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lyh5b5 + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lyfnfl + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lxzuhy + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly7rox + 1 + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyfx7m + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly9yhz + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly0671 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly5e7d + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly84fd + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyielg + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly8mre + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyj8dr + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly9vlq + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly0ol2 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyjtav + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly7f13 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly7gdm + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly4795 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly6nba + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly32n9 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyjhqf + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly2wq9 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lxzyoo + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyc08t + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyjtq0 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly2kob + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2lyg3g3 + 1 + + + + + + + + + + + + + + fr.insee + k1uraed0-RDOP-k2ly1twp + 1 + + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lxzxrz + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly6dxe + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly4hno + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lybbjm + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lygwnx + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lyelje + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lyh0cs + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly7mhn + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lye718 + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly8l03 + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly5ei8 + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lyglu4 + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly8hpa + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly995p + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly80mv + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lyb1n5 + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lycnzq + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly87ow + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly5nue + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly530g + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly5ok6 + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2ly1xvk + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lygwdm + 1 + + + + + + + + + + + + + 0 + 999 + + Decimal + + fr.insee + k1uraed0-RDOP-k2lydgec + 1 + + + + + + + + + + + + fr.insee + k1urtrhx + 1 + Instruction + + + fr.insee + k1urn4wj + 1 + Instruction + + + fr.insee + k1ureccn + 1 + Instruction + + + fr.insee + k1urvjp2 + 1 + Instruction + + + fr.insee + k2aanzhg + 1 + Instruction + + + fr.insee + k2dhlort + 1 + Instruction + + + + fr.insee + k266f9xb + 1 + + EFFDURV2 + + + fr.insee + k266f9xb-QOP-k2ly98zh + 1 + + DURTRIM1V2 + + + + fr.insee + k266f9xb-QOP-k2lyj778 + 1 + + DURTRIM2V2 + + + + fr.insee + k266f9xb-QOP-k2ly3rl8 + 1 + + DURTRIM3V2 + + + + fr.insee + k266f9xb-QOP-k2lyck6o + 1 + + DURTRIM4V2 + + + + fr.insee + k266f9xb-QOP-k2ly2n1h + 1 + + EFFDURT1V2 + + + + fr.insee + k266f9xb-QOP-k2lybzaz + 1 + + EFFDURT2V2 + + + + fr.insee + k266f9xb-QOP-k2lyd4ep + 1 + + EFFDURT3V2 + + + + fr.insee + k266f9xb-QOP-k2ly02y2 + 1 + + EFFDURT4V2 + + + + + fr.insee + k266f9xb-RDOP-k2ly98zh + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2ly98zh + 1 + OutParameter + + + + + fr.insee + k266f9xb-RDOP-k2lyj778 + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2lyj778 + 1 + OutParameter + + + + + fr.insee + k266f9xb-RDOP-k2ly3rl8 + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2ly3rl8 + 1 + OutParameter + + + + + fr.insee + k266f9xb-RDOP-k2lyck6o + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2lyck6o + 1 + OutParameter + + + + + fr.insee + k266f9xb-RDOP-k2ly2n1h + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2ly2n1h + 1 + OutParameter + + + + + fr.insee + k266f9xb-RDOP-k2lybzaz + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2lybzaz + 1 + OutParameter + + + + + fr.insee + k266f9xb-RDOP-k2lyd4ep + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2lyd4ep + 1 + OutParameter + + + + + fr.insee + k266f9xb-RDOP-k2ly02y2 + 1 + OutParameter + + + fr.insee + k266f9xb-QOP-k2ly02y2 + 1 + OutParameter + + + + + Pour vos salariés à temps complet (hors forfait en jours), indiquez la durée collective hebdomadaire habituelle de travail (en moyenne sur l'année en cas d'annualisation ou de jours de RTT) et l'effectif concerné par cette durée : + + + + + + fr.insee + k1ur4irc + 1 + CodeList + + + + + + + fr.insee + k266f9xb-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k266f9xb-RDOP-k2ly98zh + 1 + + + + + + + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k266f9xb-RDOP-k2lyj778 + 1 + + + + + + + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k266f9xb-RDOP-k2ly3rl8 + 1 + + + + + + + + + + + + + HH:CH + duration + + 00:00 + 99:99 + + + fr.insee + k266f9xb-RDOP-k2lyck6o + 1 + + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k266f9xb-RDOP-k2ly2n1h + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k266f9xb-RDOP-k2lybzaz + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k266f9xb-RDOP-k2lyd4ep + 1 + + + + + + + + + + + + + 0 + 999999 + + Decimal + + fr.insee + k266f9xb-RDOP-k2ly02y2 + 1 + + + + + + + + + + + + fr.insee + k266oqkq + 1 + Instruction + + + fr.insee + k266wjve + 1 + Instruction + + + + fr.insee + k24pbhww + 1 + + REPSMICEFF + + + fr.insee + k24pbhww-QOP-k2lxyxvc + 1 + + EFFSMICTC + + + + fr.insee + k24pbhww-QOP-k2lydycm + 1 + + EFFSMICTP + + + + + fr.insee + k24pbhww-RDOP-k2lxyxvc + 1 + OutParameter + + + fr.insee + k24pbhww-QOP-k2lxyxvc + 1 + OutParameter + + + + + fr.insee + k24pbhww-RDOP-k2lydycm + 1 + OutParameter + + + fr.insee + k24pbhww-QOP-k2lydycm + 1 + OutParameter + + + + + Parmi l'effectif de salariés bénéficiaires de la revalorisation du Smic ( = ¤k1c9rr20-QOP-k1c9k5al¤ ), distinguez : + + + + + + fr.insee + k24pf1k2 + 1 + CodeList + + + + + + + fr.insee + k24pbhww-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k24pbhww-RDOP-k2lxyxvc + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k24pbhww-RDOP-k2lydycm + 1 + + + + + + + + + + + + + fr.insee + k24pfxg4 + 1 + + REPSMICSEXE + + + fr.insee + k24pfxg4-QOP-k2lyix6b + 1 + + EFFSMICF + + + + fr.insee + k24pfxg4-QOP-k2lyb54a + 1 + + EFFSMICH + + + + + fr.insee + k24pfxg4-RDOP-k2lyix6b + 1 + OutParameter + + + fr.insee + k24pfxg4-QOP-k2lyix6b + 1 + OutParameter + + + + + fr.insee + k24pfxg4-RDOP-k2lyb54a + 1 + OutParameter + + + fr.insee + k24pfxg4-QOP-k2lyb54a + 1 + OutParameter + + + + + Parmi l'effectif de salariés bénéficiaires de la revalorisation du Smic (= ¤k1c9rr20-QOP-k1c9k5al¤ ), distinguez : + + + + + + fr.insee + k1c9vjcm + 1 + CodeList + + + + + + + fr.insee + k24pfxg4-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k24pfxg4-RDOP-k2lyix6b + 1 + + + + + + + + + + + + + 0 + 99999 + + Decimal + + fr.insee + k24pfxg4-RDOP-k2lyb54a + 1 + + + + + + + + + + + + + fr.insee + k1c7abcz + 1 + + REPNBVAC + + + fr.insee + k1c7abcz-QOP-k2ly75po + 1 + + NBVACNC + + + + fr.insee + k1c7abcz-QOP-k2lygv0h + 1 + + NBVACIN + + + + fr.insee + k1c7abcz-QOP-k2lxzd84 + 1 + + NBVACOC + + + + + fr.insee + k1c7abcz-RDOP-k2ly75po + 1 + OutParameter + + + fr.insee + k1c7abcz-QOP-k2ly75po + 1 + OutParameter + + + + + fr.insee + k1c7abcz-RDOP-k2lygv0h + 1 + OutParameter + + + fr.insee + k1c7abcz-QOP-k2lygv0h + 1 + OutParameter + + + + + fr.insee + k1c7abcz-RDOP-k2lxzd84 + 1 + OutParameter + + + fr.insee + k1c7abcz-QOP-k2lxzd84 + 1 + OutParameter + + + + + Précisez le détail de ces emplois : + + + + + + fr.insee + k1c79u2s + 1 + CodeList + + + + + + + fr.insee + k1c7abcz-secondDimension-fakeCL-1 + 1 + CodeList + + + + + + + + 0 + 9999 + + Decimal + + fr.insee + k1c7abcz-RDOP-k2ly75po + 1 + + + + + + + + + + + + + 0 + 9999 + + Decimal + + fr.insee + k1c7abcz-RDOP-k2lygv0h + 1 + + + + + + + + + + + + + 0 + 9999 + + Decimal + + fr.insee + k1c7abcz-RDOP-k2lxzd84 + 1 + + + + + + + + + + + + + + fr.insee + CategoryScheme-k1ur4irc + 1 + + DURHEB + + + fr.insee + CA-k1ur4irc-1 + 1 + + Durée hebdomadaire 1 + + + + fr.insee + CA-k1ur4irc-2 + 1 + + Durée hebdomadaire 2 + + + + fr.insee + CA-k1ur4irc-3 + 1 + + Durée hebdomadaire 3 + + + + fr.insee + CA-k1ur4irc-4 + 1 + + Durée hebdomadaire 4 + + + + + fr.insee + CategoryScheme-k1ur63h9 + 1 + + PCS + + + fr.insee + CA-k1ur63h9-1 + 1 + + Ouvriers + + + + fr.insee + CA-k1ur63h9-2 + 1 + + 1 + + + + fr.insee + CA-k1ur63h9-3 + 1 + + 2 + + + + fr.insee + CA-k1ur63h9-4 + 1 + + 3 + + + + fr.insee + CA-k1ur63h9-5 + 1 + + Employés + + + + fr.insee + CA-k1ur63h9-6 + 1 + + 1 + + + + fr.insee + CA-k1ur63h9-7 + 1 + + 2 + + + + fr.insee + CA-k1ur63h9-8 + 1 + + 3 + + + + fr.insee + CA-k1ur63h9-9 + 1 + + Professions intermédiaires + + + + fr.insee + CA-k1ur63h9-10 + 1 + + 1 + + + + fr.insee + CA-k1ur63h9-11 + 1 + + 2 + + + + fr.insee + CA-k1ur63h9-12 + 1 + + 3 + + + + fr.insee + CA-k1ur63h9-13 + 1 + + Cadres + + + + fr.insee + CA-k1ur63h9-14 + 1 + + 1 + + + + fr.insee + CA-k1ur63h9-15 + 1 + + 2 + + + + fr.insee + CA-k1ur63h9-16 + 1 + + 3 + + + + + fr.insee + CategoryScheme-k2ehm3ij + 1 + + L_num + + + fr.insee + CA-k2ehm3ij-1 + 1 + + 1 + + + + fr.insee + CA-k2ehm3ij-2 + 1 + + 2 + + + + fr.insee + CA-k2ehm3ij-3 + 1 + + 3 + + + + + fr.insee + CategoryScheme-k1bxcxuy + 1 + + OUINON + + + fr.insee + CA-k1bxcxuy-1 + 1 + + Oui + + + + fr.insee + CA-k1bxcxuy-2 + 1 + + Non + + + + + fr.insee + CategoryScheme-k24pf1k2 + 1 + + LISTESMICTEMPS + + + fr.insee + CA-k24pf1k2-1 + 1 + + le nombre de salariés à temps complet + + + + fr.insee + CA-k24pf1k2-2 + 1 + + le nombre de salariés à temps partiel + + + + + fr.insee + CategoryScheme-k1c9vjcm + 1 + + BENEFSMICSEXE + + + fr.insee + CA-k1c9vjcm-1 + 1 + + le nombre de femmes + + + + fr.insee + CA-k1c9vjcm-2 + 1 + + le nombre d'hommes + + + + + fr.insee + CategoryScheme-k1c79u2s + 1 + + EMPVAC + + + fr.insee + CA-k1c79u2s-1 + 1 + + Emplois nouvellement créés + + + + fr.insee + CA-k1c79u2s-2 + 1 + + Emplois inoccupés + + + + fr.insee + CA-k1c79u2s-3 + 1 + + Emplois encore occupés et sur le point de se libérer + + + + + fr.insee + CategoryScheme-k1c9zo2z + 1 + + CONVCOLL + + + fr.insee + CA-k1c9zo2z-1 + 1 + + Vous appliquez de façon principale cette convention ou statut + + + + fr.insee + CA-k1c9zo2z-2 + 1 + + Vous n'appliquez pas de convention ni de statut + + + + fr.insee + CA-k1c9zo2z-3 + 1 + + Vous appliquez de façon principale une autre convention ou statut + + + + + fr.insee + CategoryScheme-k1ura6hp-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1ura6hp-secondDimension-fakeCL-1 + + + fr.insee + CA-k1ura6hp-secondDimension-fakeCL-1-1 + 1 + + Heures centièmes + + + + fr.insee + CA-k1ura6hp-secondDimension-fakeCL-1-2 + 1 + + Effectif de salariés au ¤REFER¤ + + + + + fr.insee + CategoryScheme-k1ural1j-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1ural1j-secondDimension-fakeCL-1 + + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-1 + 1 + + Libellé du poste de travail occupé le plus représentatif (A) + + + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-2 + 1 + + Coefficient ou niveau hiérarchique associé (B) + + + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-3 + 1 + + Salaire mensuel de base brut (hors primes et heures supplémentaires) du salarié suivi en ¤MOIS¤ (C) + + + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-4 + 1 + + Horaire mensuel de base (arrondi en heures) du salarié suivi en ¤MOIS¤ (D) + + + + + fr.insee + CategoryScheme-k1cav4yq-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1cav4yq-secondDimension-fakeCL-1 + + + fr.insee + CA-k1cav4yq-secondDimension-fakeCL-1-1 + 1 + + Code IDCC + + + + fr.insee + CA-k1cav4yq-secondDimension-fakeCL-1-2 + 1 + + Convention collective de branche, convention d'entreprise ou d'établissement, statut + + + + fr.insee + CA-k1cav4yq-secondDimension-fakeCL-1-3 + 1 + + Cochez la case si vous appliquez cette convention de façon principale + + + + + fr.insee + CategoryScheme-k1uraed0-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1uraed0-secondDimension-fakeCL-1 + + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-1 + 1 + + Effectif de salariés au ¤REFER¤ (A) + + + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-2 + 1 + + Libellé du poste de travail occupé le plus représentatif (B) + + + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-3 + 1 + + Coefficient ou niveau hiérarchique associé (C) + + + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-4 + 1 + + Salaire mensuel de base brut (hors primes et heures supplémentaires) du salarié suivi en ¤MOIS¤ (D) + + + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-5 + 1 + + Horaire mensuel de base (arrondi en heures) du salarié suivi en ¤MOIS¤ (E) + + + + + fr.insee + CategoryScheme-k266f9xb-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k266f9xb-secondDimension-fakeCL-1 + + + fr.insee + CA-k266f9xb-secondDimension-fakeCL-1-1 + 1 + + Heures centièmes + + + + fr.insee + CA-k266f9xb-secondDimension-fakeCL-1-2 + 1 + + Effectif de salariés au ¤REFER¤ + + + + + fr.insee + CategoryScheme-k24pbhww-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k24pbhww-secondDimension-fakeCL-1 + + + fr.insee + CA-k24pbhww-secondDimension-fakeCL-1-1 + 1 + + Effectif de salariés + + + + + fr.insee + CategoryScheme-k24pfxg4-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k24pfxg4-secondDimension-fakeCL-1 + + + fr.insee + CA-k24pfxg4-secondDimension-fakeCL-1-1 + 1 + + Effectif de salariés + + + + + fr.insee + CategoryScheme-k1c7abcz-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1c7abcz-secondDimension-fakeCL-1 + + + fr.insee + CA-k1c7abcz-secondDimension-fakeCL-1-1 + 1 + + Nombre + + + + + fr.insee + CategoryScheme-k0hy96wtbis + 1 + + A définir + + + fr.insee + INSEE-COMMUN-CA-Booleen-1 + 1 + + + + + + + fr.insee + ACEMOTRIM-CLS + 1 + + ACEMOTRIM + + + fr.insee + k1ur4irc + 1 + + DURHEB + + Regular + + Ordinal + + + fr.insee + k1ur4irc-1 + 1 + + fr.insee + CA-k1ur4irc-1 + 1 + Category + + DURHEB1 + + + fr.insee + k1ur4irc-2 + 1 + + fr.insee + CA-k1ur4irc-2 + 1 + Category + + DURHEB2 + + + fr.insee + k1ur4irc-3 + 1 + + fr.insee + CA-k1ur4irc-3 + 1 + Category + + DURHEB3 + + + fr.insee + k1ur4irc-4 + 1 + + fr.insee + CA-k1ur4irc-4 + 1 + Category + + DURHEB4 + + + + fr.insee + k1ur63h9 + 1 + + PCS + + Regular + + Ordinal + + + fr.insee + k1ur63h9-1 + 1 + + fr.insee + CA-k1ur63h9-1 + 1 + Category + + OUV + + fr.insee + k1ur63h9-2 + 1 + + fr.insee + CA-k1ur63h9-2 + 1 + Category + + SAL01 + + + fr.insee + k1ur63h9-3 + 1 + + fr.insee + CA-k1ur63h9-3 + 1 + Category + + SAL02 + + + fr.insee + k1ur63h9-4 + 1 + + fr.insee + CA-k1ur63h9-4 + 1 + Category + + SAL03 + + + + fr.insee + k1ur63h9-5 + 1 + + fr.insee + CA-k1ur63h9-5 + 1 + Category + + EMP + + fr.insee + k1ur63h9-6 + 1 + + fr.insee + CA-k1ur63h9-6 + 1 + Category + + SAL04 + + + fr.insee + k1ur63h9-7 + 1 + + fr.insee + CA-k1ur63h9-7 + 1 + Category + + SAL05 + + + fr.insee + k1ur63h9-8 + 1 + + fr.insee + CA-k1ur63h9-8 + 1 + Category + + SAL06 + + + + fr.insee + k1ur63h9-9 + 1 + + fr.insee + CA-k1ur63h9-9 + 1 + Category + + PI + + fr.insee + k1ur63h9-10 + 1 + + fr.insee + CA-k1ur63h9-10 + 1 + Category + + SAL07 + + + fr.insee + k1ur63h9-11 + 1 + + fr.insee + CA-k1ur63h9-11 + 1 + Category + + SAL08 + + + fr.insee + k1ur63h9-12 + 1 + + fr.insee + CA-k1ur63h9-12 + 1 + Category + + SAL09 + + + + fr.insee + k1ur63h9-13 + 1 + + fr.insee + CA-k1ur63h9-13 + 1 + Category + + CAD + + fr.insee + k1ur63h9-14 + 1 + + fr.insee + CA-k1ur63h9-14 + 1 + Category + + SAL10 + + + fr.insee + k1ur63h9-15 + 1 + + fr.insee + CA-k1ur63h9-15 + 1 + Category + + SAL11 + + + fr.insee + k1ur63h9-16 + 1 + + fr.insee + CA-k1ur63h9-16 + 1 + Category + + SAL12 + + + + + fr.insee + k2ehm3ij + 1 + + L_num + + Regular + + Ordinal + + + fr.insee + k2ehm3ij-1 + 1 + + fr.insee + CA-k2ehm3ij-1 + 1 + Category + + 1 + + + fr.insee + k2ehm3ij-2 + 1 + + fr.insee + CA-k2ehm3ij-2 + 1 + Category + + 2 + + + fr.insee + k2ehm3ij-3 + 1 + + fr.insee + CA-k2ehm3ij-3 + 1 + Category + + 3 + + + + fr.insee + k1bxcxuy + 1 + + OUINON + + Regular + + Ordinal + + + fr.insee + k1bxcxuy-1 + 1 + + fr.insee + CA-k1bxcxuy-1 + 1 + Category + + 1 + + + fr.insee + k1bxcxuy-2 + 1 + + fr.insee + CA-k1bxcxuy-2 + 1 + Category + + 0 + + + + fr.insee + k24pf1k2 + 1 + + LISTESMICTEMPS + + Regular + + Ordinal + + + fr.insee + k24pf1k2-1 + 1 + + fr.insee + CA-k24pf1k2-1 + 1 + Category + + EFFTC + + + fr.insee + k24pf1k2-2 + 1 + + fr.insee + CA-k24pf1k2-2 + 1 + Category + + EFFTP + + + + fr.insee + k1c9vjcm + 1 + + BENEFSMICSEXE + + Regular + + Ordinal + + + fr.insee + k1c9vjcm-1 + 1 + + fr.insee + CA-k1c9vjcm-1 + 1 + Category + + EFFF + + + fr.insee + k1c9vjcm-2 + 1 + + fr.insee + CA-k1c9vjcm-2 + 1 + Category + + EFFH + + + + fr.insee + k1c79u2s + 1 + + EMPVAC + + Regular + + Ordinal + + + fr.insee + k1c79u2s-1 + 1 + + fr.insee + CA-k1c79u2s-1 + 1 + Category + + EMPNOUV + + + fr.insee + k1c79u2s-2 + 1 + + fr.insee + CA-k1c79u2s-2 + 1 + Category + + EMPINOC + + + fr.insee + k1c79u2s-3 + 1 + + fr.insee + CA-k1c79u2s-3 + 1 + Category + + EMPOCC + + + + fr.insee + k1c9zo2z + 1 + + CONVCOLL + + Regular + + Ordinal + + + fr.insee + k1c9zo2z-1 + 1 + + fr.insee + CA-k1c9zo2z-1 + 1 + Category + + CONVCOLLAPP + + + fr.insee + k1c9zo2z-2 + 1 + + fr.insee + CA-k1c9zo2z-2 + 1 + Category + + CONVCOLLPAS + + + fr.insee + k1c9zo2z-3 + 1 + + fr.insee + CA-k1c9zo2z-3 + 1 + Category + + CONVCOLLAUTR + + + + fr.insee + k1ura6hp-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1ura6hp-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k1ura6hp-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k1ura6hp-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + fr.insee + k1ura6hp-secondDimension-fakeCL-1-2 + 1 + + fr.insee + CA-k1ura6hp-secondDimension-fakeCL-1-2 + 1 + Category + + 2 + + + + fr.insee + k1ural1j-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1ural1j-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k1ural1j-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + fr.insee + k1ural1j-secondDimension-fakeCL-1-2 + 1 + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-2 + 1 + Category + + 2 + + + fr.insee + k1ural1j-secondDimension-fakeCL-1-3 + 1 + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-3 + 1 + Category + + 3 + + + fr.insee + k1ural1j-secondDimension-fakeCL-1-4 + 1 + + fr.insee + CA-k1ural1j-secondDimension-fakeCL-1-4 + 1 + Category + + 4 + + + + fr.insee + k1cav4yq-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1cav4yq-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k1cav4yq-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k1cav4yq-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + fr.insee + k1cav4yq-secondDimension-fakeCL-1-2 + 1 + + fr.insee + CA-k1cav4yq-secondDimension-fakeCL-1-2 + 1 + Category + + 2 + + + fr.insee + k1cav4yq-secondDimension-fakeCL-1-3 + 1 + + fr.insee + CA-k1cav4yq-secondDimension-fakeCL-1-3 + 1 + Category + + 3 + + + + fr.insee + k1uraed0-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1uraed0-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k1uraed0-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + fr.insee + k1uraed0-secondDimension-fakeCL-1-2 + 1 + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-2 + 1 + Category + + 2 + + + fr.insee + k1uraed0-secondDimension-fakeCL-1-3 + 1 + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-3 + 1 + Category + + 3 + + + fr.insee + k1uraed0-secondDimension-fakeCL-1-4 + 1 + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-4 + 1 + Category + + 4 + + + fr.insee + k1uraed0-secondDimension-fakeCL-1-5 + 1 + + fr.insee + CA-k1uraed0-secondDimension-fakeCL-1-5 + 1 + Category + + 5 + + + + fr.insee + k266f9xb-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k266f9xb-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k266f9xb-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k266f9xb-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + fr.insee + k266f9xb-secondDimension-fakeCL-1-2 + 1 + + fr.insee + CA-k266f9xb-secondDimension-fakeCL-1-2 + 1 + Category + + 2 + + + + fr.insee + k24pbhww-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k24pbhww-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k24pbhww-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k24pbhww-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + + fr.insee + k24pfxg4-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k24pfxg4-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k24pfxg4-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k24pfxg4-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + + fr.insee + k1c7abcz-secondDimension-fakeCL-1 + 1 + + FAKE-CODELIST-k1c7abcz-secondDimension-fakeCL-1 + + Regular + + Ordinal + + + fr.insee + k1c7abcz-secondDimension-fakeCL-1-1 + 1 + + fr.insee + CA-k1c7abcz-secondDimension-fakeCL-1-1 + 1 + Category + + 1 + + + + fr.insee + INSEE-COMMUN-CL-Booleen + 1 + + Booleen + + Regular + + Ordinal + + + fr.insee + INSEE-COMMUN-CL-Booleen-1 + 1 + + fr.insee + INSEE-COMMUN-CA-Booleen-1 + 1 + Category + + 1 + + + + + fr.insee + VariableScheme-k0hy96wtbis + 1 + + Variable Scheme for the survey + + + fr.insee + k2aan9f1 + 1.0 + + CONCERN2 + + + CONCERN2 + + + + fr.insee + k2aan9f2 + 1.0 + + REFER + + + REFER + + + + fr.insee + k2aan9f3 + 1.0 + + VAL_SMIC + + + VAL_SMIC + + + + fr.insee + k2aan9f4 + 1.0 + + TRIM + + + TRIM + + + + fr.insee + k2aan9f5 + 1.0 + + FICHECC + + + FICHECC + + + + fr.insee + k2aan9f6 + 1.0 + + MOIS + + + MOIS + + + + fr.insee + k2aan9f7 + 1.0 + + DATE1 + + + DATE1 + + + + fr.insee + k2aan9f8 + 1.0 + + DATE1BIS + + + DATE1BIS + + + + fr.insee + k2aan9f9 + 1.0 + + DATE2 + + + DATE2 + + + + fr.insee + k2aan9f10 + 1.0 + + IDCC + + + IDCC + + + + fr.insee + k2aan9f11 + 1.0 + + CONVCOLL + + + CONVCOLL + + + + fr.insee + k2aan9f12 + 1.0 + + IDCC1 + + + IDCC1 + + + + fr.insee + k2aan9f13 + 1.0 + + IDCC2 + + + IDCC2 + + + + fr.insee + k2aan9f14 + 1.0 + + IDCC3 + + + IDCC3 + + + + fr.insee + k2aan9f15 + 1.0 + + CONVCOLL1 + + + CONVCOLL1 + + + + fr.insee + k2aan9f16 + 1.0 + + CONVCOLL2 + + + CONVCOLL2 + + + + fr.insee + k2aan9f17 + 1.0 + + CONVCOLL3 + + + CONVCOLL3 + + + + fr.insee + k2aan9fp + 1 + + EFFTABV2 + + + Somme des effectifs du tableau des salaires V2 + + + fr.insee + k2aan9fp-VROP + 1 + + + + fr.insee + k2aan9fp-GI + 1 + GenerationInstruction + + + fr.insee + k2aan9fp-GOP + 1 + OutParameter + + + fr.insee + k2aan9fp-VROP + 1 + OutParameter + + + + + + + + fr.insee + k2ab1ect + 1 + + EFFREPV2 + + + Effectifs restants à répartir + + + fr.insee + k2ab1ect-VROP + 1 + + + + fr.insee + k2ab1ect-GI + 1 + GenerationInstruction + + + fr.insee + k2ab1ect-GOP + 1 + OutParameter + + + fr.insee + k2ab1ect-VROP + 1 + OutParameter + + + + + + + + fr.insee + k2ej7p1i + 1 + + EFFTEMPS + + + Effectif par durées déclaré V1 V3 + + + fr.insee + k2ej7p1i-VROP + 1 + + + + fr.insee + k2ej7p1i-GI + 1 + GenerationInstruction + + + fr.insee + k2ej7p1i-GOP + 1 + OutParameter + + + fr.insee + k2ej7p1i-VROP + 1 + OutParameter + + + + + + + + fr.insee + k2eje58b + 1 + + NBCOCHE + + + Nombre de case cochée convcollv2 + + + fr.insee + k2eje58b-VROP + 1 + + + + fr.insee + k2eje58b-GI + 1 + GenerationInstruction + + + fr.insee + k2eje58b-GOP + 1 + OutParameter + + + fr.insee + k2eje58b-VROP + 1 + OutParameter + + + + + + + + fr.insee + k2ek3jtf + 1 + + EFFTEMPSV2 + + + Effectif par durées V2 + + + fr.insee + k2ek3jtf-VROP + 1 + + + + fr.insee + k2ek3jtf-GI + 1 + GenerationInstruction + + + fr.insee + k2ek3jtf-GOP + 1 + OutParameter + + + fr.insee + k2ek3jtf-VROP + 1 + OutParameter + + + + + + + + fr.insee + k239uvpy + 1 + + EFFTOT + + + EFFTOT label + + + fr.insee + k239vtgh-QOP-k239l9jm + 1 + OutParameter + + + fr.insee + k239vtgh + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k239t98o + 1 + + EFFCDD + + + EFFCDD label + + + fr.insee + k239s65r-QOP-k239u802 + 1 + OutParameter + + + fr.insee + k239s65r + 1 + QuestionItem + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k266h1um + 1 + + EFFTP + + + EFFTP label + + + fr.insee + k266tqxw-QOP-k266s9np + 1 + OutParameter + + + fr.insee + k266tqxw + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k1uqu9d2 + 1 + + EFFDURF + + + EFFJOURF label + + + fr.insee + k1uqp04a-QOP-k1urc3ep + 1 + OutParameter + + + fr.insee + k1uqp04a + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k1ur5mqa + 1 + + DURTRIM1 + + + Durée hebdomadaire 1 + + + fr.insee + k1ura6hp-QOP-k2ly3rxl + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k1ur82ep + 1 + + DURTRIM2 + + + Durée hebdomadaire 2 + + + fr.insee + k1ura6hp-QOP-k2ly8l2o + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k1ur60qh + 1 + + DURTRIM3 + + + Durée hebdomadaire 3 + + + fr.insee + k1ura6hp-QOP-k2lyj3ty + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k1uqx6vq + 1 + + DURTRIM4 + + + Durée hebdomadaire 4 + + + fr.insee + k1ura6hp-QOP-k2ly3oqc + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k1urhpos + 1 + + EFFDURT1 + + + Effectif durée hebdomadaire 1 + + + fr.insee + k1ura6hp-QOP-k2ly30pv + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k1ur1d90 + 1 + + EFFDURT2 + + + Effectif durée hebdomadaire 2 + + + fr.insee + k1ura6hp-QOP-k2lygkxt + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k1ur151t + 1 + + EFFDURT3 + + + Effectif durée hebdomadaire 3 + + + fr.insee + k1ura6hp-QOP-k2lych1o + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k1ur2n5x + 1 + + EFFDURT4 + + + Effectif durée hebdomadaire 4 + + + fr.insee + k1ura6hp-QOP-k2lyhlun + 1 + OutParameter + + + fr.insee + k1ura6hp + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266qvyr + 1 + + HEURSUP + + + Heures supplémentaires + + + fr.insee + k266ti4w-QOP-k266nvmo + 1 + OutParameter + + + fr.insee + k266ti4w + 1 + QuestionItem + + + + + 0 + 99999999 + + Decimal + + + + + fr.insee + k266igh1 + 1 + + EFFHSUP + + + Effectif heures supplémentaires + + + fr.insee + k266ghuf-QOP-k266x73i + 1 + OutParameter + + + fr.insee + k266ghuf + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266tirx + 1 + + HEURCOMP + + + Heures complémentaires + + + fr.insee + k2670ijx-QOP-k266ulz5 + 1 + OutParameter + + + fr.insee + k2670ijx + 1 + QuestionItem + + + + + 0 + 99999999 + + Decimal + + + + + fr.insee + k269xnc6 + 1 + + LIBEMP01 + + + 1-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2ly2bcl + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269seqf + 1 + + LIBEMP02 + + + 2-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2ly7fbz + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269qaf6 + 1 + + LIBEMP03 + + + 3-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2ly2abp + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269ozw4 + 1 + + LIBEMP04 + + + 1-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2ly3f3a + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269xvk1 + 1 + + LIBEMP05 + + + 2-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2ly7s3e + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269xeg3 + 1 + + LIBEMP06 + + + 3-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2lygu16 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k26a0hqz + 1 + + LIBEMP07 + + + 1-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2lxzxm8 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269ytzy + 1 + + LIBEMP08 + + + 2-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2ly08xm + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269z7e0 + 1 + + LIBEMP09 + + + 3-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2lygxn1 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k26a6onf + 1 + + LIBEMP10 + + + 1-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2lxz47h + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269ydg0 + 1 + + LIBEMP11 + + + 2-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2ly2umg + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269zakq + 1 + + LIBEMP12 + + + 3-Libellé du poste occupé + + + fr.insee + k1ural1j-QOP-k2lxz623 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269q0ej + 1 + + COEF01 + + + 1-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2lyj33d + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269z3nx + 1 + + COEF02 + + + 2-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2ly70vz + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269zkfw + 1 + + COEF03 + + + 3-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2lyj6gq + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k26a6bfn + 1 + + COEF04 + + + 1-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2ly7m2f + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k26a4j9w + 1 + + COEF05 + + + 2-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2lyic6g + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269mxas + 1 + + COEF06 + + + 3-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2ly82x7 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269o5ze + 1 + + COEF07 + + + 1-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2lyhltd + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269x84p + 1 + + COEF08 + + + 2-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2ly73uw + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269qo1d + 1 + + COEF09 + + + 3-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2lygxiy + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269s160 + 1 + + COEF10 + + + 1-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2lyc23p + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k26a0pcj + 1 + + COEF11 + + + 2-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2lyaieb + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k269nulw + 1 + + COEF12 + + + 3-Coefficient ou niveau hiérarchique du poste + + + fr.insee + k1ural1j-QOP-k2ly4wms + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + + fr.insee + k26a42cr + 1 + + SALM01 + + + 1-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lyhejc + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269xtti + 1 + + SALM02 + + + 2-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly9ewk + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269skes + 1 + + SALM03 + + + 3-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lxz9y7 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k26a0jr3 + 1 + + SALM04 + + + 1-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly3k1l + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269lxok + 1 + + SALM05 + + + 2-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly88z1 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k26a41qv + 1 + + SALM06 + + + 3-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lydzyu + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269xfv4 + 1 + + SALM07 + + + 1-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lyd96n + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269wdff + 1 + + SALM08 + + + 2-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly7zhk + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269mypj + 1 + + SALM09 + + + 3-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lydaci + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269z07k + 1 + + SALM10 + + + 1-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lydzvc + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k26a2ph2 + 1 + + SALM11 + + + 2-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly34d8 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269yb2d + 1 + + SALM12 + + + 3-Salaire mensuel de base brut (hors primes et heures supplémentaires) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lyi0rm + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k269mbmj + 1 + + HORM01 + + + 1-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly9xks + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k26a1j9a + 1 + + HORM02 + + + 2-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly1q2d + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k26a022j + 1 + + HORM03 + + + 3-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lyh1do + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k26a0r8s + 1 + + HORM04 + + + 1-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lxz4ge + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k269sau4 + 1 + + HORM05 + + + 2-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lxzlu9 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k269sf2b + 1 + + HORM06 + + + 3-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lyaba2 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k269rb1o + 1 + + HORM07 + + + 1-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly26dv + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k26a0q28 + 1 + + HORM08 + + + 2-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lyd6l7 + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k269rif6 + 1 + + HORM09 + + + 3-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly6qlp + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k269s7xv + 1 + + HORM10 + + + 1-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly3c6l + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k26a4pok + 1 + + HORM11 + + + 2-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2ly14re + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k269na66 + 1 + + HORM12 + + + 3-Horaire mensuel de base (arrondir en heures) en ¤MOIS¤ + + + fr.insee + k1ural1j-QOP-k2lyhpvl + 1 + OutParameter + + + fr.insee + k1ural1j + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k1uqf158 + 1 + + EFFTOTV2 + + + EFFTOT label + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k0hy7wtn + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k1uqiwlm + 1 + + EFFCDDV2 + + + EFFCDD label + + + fr.insee + k0hysdl9-QOP-k0hz55zz + 1 + OutParameter + + + fr.insee + k0hysdl9 + 1 + QuestionItem + + + + + 0 + 99999 + + Decimal + + + + + + fr.insee + k2enk9rt + 1 + + ESTCOCHE1 + + + 1-Cochez la case si vous appliquez cette convention de façon principale + + + fr.insee + k1cav4yq-QOP-k2ly70ug + 1 + OutParameter + + + fr.insee + k1cav4yq + 1 + QuestionGrid + + + + + + + fr.insee + INSEE-COMMUN-CL-Booleen-1 + 1 + Code + + + + + + + + fr.insee + k2enx5dn + 1 + + ESTCOCHE2 + + + 2-Cochez la case si vous appliquez cette convention de façon principale + + + fr.insee + k1cav4yq-QOP-k2lyatvp + 1 + OutParameter + + + fr.insee + k1cav4yq + 1 + QuestionGrid + + + + + + + fr.insee + INSEE-COMMUN-CL-Booleen-1 + 1 + Code + + + + + + + + fr.insee + k2enilgx + 1 + + ESTCOCHE3 + + + 3-Cochez la case si vous appliquez cette convention de façon principale + + + fr.insee + k1cav4yq-QOP-k2lyifac + 1 + OutParameter + + + fr.insee + k1cav4yq + 1 + QuestionGrid + + + + + + + fr.insee + INSEE-COMMUN-CL-Booleen-1 + 1 + Code + + + + + + + + fr.insee + k2djbw7t1 + 1 + + IDCCCORRV2 + + + IDCCCORRV2 label + + + fr.insee + k2dhpix8-QOP-k2dj48a21 + 1 + OutParameter + + + fr.insee + k2dhpix8 + 1 + QuestionItem + + + + + + + fr.insee + k2djbw7t2 + 1 + + CONVCOLLCORRV2 + + + AUTRECONVCOLLV2 label + + + fr.insee + k2dhpix8-QOP-k2dj48a22 + 1 + OutParameter + + + fr.insee + k2dhpix8 + 1 + QuestionItem + + + + + + + fr.insee + k2a7aq9p + 1 + + EFF01V2 + + + 1-Effectifs + + + fr.insee + k1uraed0-QOP-k2ly52bo + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7fmb4 + 1 + + EFF02V2 + + + 2-Effectifs + + + fr.insee + k1uraed0-QOP-k2ly6djw + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7jvb7 + 1 + + EFF03V2 + + + 3-Effectifs + + + fr.insee + k1uraed0-QOP-k2ly71jj + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7pl6p + 1 + + EFF04V2 + + + 4-Effectifs + + + fr.insee + k1uraed0-QOP-k2lycks7 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7i2qr + 1 + + EFF05V2 + + + 5-Effectifs + + + fr.insee + k1uraed0-QOP-k2ly1q7e + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7jg6j + 1 + + EFF06V2 + + + 6-Effectifs + + + fr.insee + k1uraed0-QOP-k2lya761 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7bhml + 1 + + EFF07V2 + + + 7-Effectifs + + + fr.insee + k1uraed0-QOP-k2lyakk8 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a78u8g + 1 + + EFF08V2 + + + 8-Effectifs + + + fr.insee + k1uraed0-QOP-k2ly0k67 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7bnvo + 1 + + EFF09V2 + + + 9-Effectifs + + + fr.insee + k1uraed0-QOP-k2lyh5b5 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7hfav + 1 + + EFF10V2 + + + 10-Effectifs + + + fr.insee + k1uraed0-QOP-k2lyfnfl + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7s0aq + 1 + + EFF11V2 + + + 11-Effectifs + + + fr.insee + k1uraed0-QOP-k2lxzuhy + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7c8u2 + 1 + + EFF12V2 + + + 12-Effectifs + + + fr.insee + k1uraed0-QOP-k2ly7rox + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k2a7pngj + 1 + + LIBEMP01V2 + + + 1-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2lyfx7m + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7a241 + 1 + + LIBEMP02V2 + + + 2-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly9yhz + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7pk97 + 1 + + LIBEMP03V2 + + + 3-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly0671 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7s6nn + 1 + + LIBEMP04V2 + + + 3-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly5e7d + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7cyzk + 1 + + LIBEMP05V2 + + + 5-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly84fd + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7fwj1 + 1 + + LIBEMP06V2 + + + 6-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2lyielg + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a77i86 + 1 + + LIBEMP07V2 + + + 7-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly8mre + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7dtke + 1 + + LIBEMP08V2 + + + 8-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2lyj8dr + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7k82c + 1 + + LIBEMP09V2 + + + 9-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly9vlq + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7jte3 + 1 + + LIBEMP10V2 + + + 10-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly0ol2 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7o5mc + 1 + + LIBEMP11V2 + + + 11-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2lyjtav + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7jy5k + 1 + + LIBEMP12V2 + + + 12-Libellé d'emploi + + + fr.insee + k1uraed0-QOP-k2ly7f13 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7g5ax + 1 + + COEF01V2 + + + 1-Coefficient + + + fr.insee + k1uraed0-QOP-k2ly7gdm + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7hmo7 + 1 + + COEF02V2 + + + 2-Coefficient + + + fr.insee + k1uraed0-QOP-k2ly4795 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7azog + 1 + + COEF03V2 + + + 3-Coefficient + + + fr.insee + k1uraed0-QOP-k2ly6nba + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7rt2m + 1 + + COEF04V2 + + + 4-Coefficient + + + fr.insee + k1uraed0-QOP-k2ly32n9 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7ohhi + 1 + + COEF05V2 + + + 5-Coefficient + + + fr.insee + k1uraed0-QOP-k2lyjhqf + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7lbev + 1 + + COEF06V2 + + + 6-Coefficient + + + fr.insee + k1uraed0-QOP-k2ly2wq9 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7qrd7 + 1 + + COEF07V2 + + + 7-Coefficient + + + fr.insee + k1uraed0-QOP-k2lxzyoo + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7bw0d + 1 + + COEF08V2 + + + 8-Coefficient + + + fr.insee + k1uraed0-QOP-k2lyc08t + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7rnqq + 1 + + COEF09V2 + + + 9-Coefficient + + + fr.insee + k1uraed0-QOP-k2lyjtq0 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7kdiy + 1 + + COEF10V2 + + + 10-Coefficient + + + fr.insee + k1uraed0-QOP-k2ly2kob + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7dh1z + 1 + + COEF11V2 + + + 11-Coefficient + + + fr.insee + k1uraed0-QOP-k2lyg3g3 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7a4sr + 1 + + COEF12V2 + + + 12-Coefficient + + + fr.insee + k1uraed0-QOP-k2ly1twp + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + + fr.insee + k2a7akhg + 1 + + SALM01V2 + + + 1-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lxzxrz + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7cmw7 + 1 + + SALM02V2 + + + 2-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly6dxe + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7aj27 + 1 + + SALM03V2 + + + 3-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly4hno + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7s3l3 + 1 + + SALM04V2 + + + 4-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lybbjm + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7lbei + 1 + + SALM05V2 + + + 5-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lygwnx + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7lq8l + 1 + + SALM06V2 + + + 6-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lyelje + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7p2ds + 1 + + SALM07V2 + + + 7-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lyh0cs + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7l777 + 1 + + SALM08V2 + + + 8-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly7mhn + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7pk4v + 1 + + SALM09V2 + + + 9-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lye718 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7j0kr + 1 + + SALM10V2 + + + 10-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly8l03 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7grph + 1 + + SALM11V2 + + + 11-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly5ei8 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7s1vb + 1 + + SALM12V2 + + + 12-Salaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lyglu4 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k2a7hhc4 + 1 + + HORM01V2 + + + 1-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly8hpa + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7aru8 + 1 + + HORM02V2 + + + 2-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly995p + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7gwki + 1 + + HORM03V2 + + + 3-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly80mv + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7nod3 + 1 + + HORM04V2 + + + 4-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lyb1n5 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7dsle + 1 + + HORM05V2 + + + 5-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lycnzq + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7abmz + 1 + + HORM06V2 + + + 6-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly87ow + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7h3qp + 1 + + HORM07V2 + + + 7-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly5nue + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7j4nk + 1 + + HORM08V2 + + + 8-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly530g + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7cpyi + 1 + + HORM09V2 + + + 9-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly5ok6 + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7rnpn + 1 + + HORM10V2 + + + 10-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2ly1xvk + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7aq10 + 1 + + HORM11V2 + + + 11-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lygwdm + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k2a7hdzi + 1 + + HORM12V2 + + + 12-Horaire mensuel de base + + + fr.insee + k1uraed0-QOP-k2lydgec + 1 + OutParameter + + + fr.insee + k1uraed0 + 1 + QuestionGrid + + + + + 0 + 999 + + Decimal + + + + + fr.insee + k1uqj4j9 + 1 + + EFFTPV2 + + + Effectif à temps partiel + + + fr.insee + k1uqg8k9-QOP-k1uql8iq + 1 + OutParameter + + + fr.insee + k1uqg8k9 + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266gght + 1 + + EFFDURFV2 + + + Effectif au forfait jour + + + fr.insee + k266rlfn-QOP-k266c5i0 + 1 + OutParameter + + + fr.insee + k266rlfn + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266wo1r + 1 + + DURTRIM1V2 + + + Durée hebdomadaire 1 + + + fr.insee + k266f9xb-QOP-k2ly98zh + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k266wk87 + 1 + + DURTRIM2V2 + + + Durée hebdomadaire 2 + + + fr.insee + k266f9xb-QOP-k2lyj778 + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k266jw2b + 1 + + DURTRIM3V2 + + + Durée hebdomadaire 3 + + + fr.insee + k266f9xb-QOP-k2ly3rl8 + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k266ej0p + 1 + + DURTRIM4V2 + + + Durée hebdomadaire 4 + + + fr.insee + k266f9xb-QOP-k2lyck6o + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + HH:CH + duration + + 00:00 + 99:99 + + + + + + fr.insee + k266rofi + 1 + + EFFDURT1V2 + + + Effectif durée hebdomadaire 1 + + + fr.insee + k266f9xb-QOP-k2ly2n1h + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266srsd + 1 + + EFFDURT2V2 + + + Effectif durée hebdomadaire 2 + + + fr.insee + k266f9xb-QOP-k2lybzaz + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266fpm6 + 1 + + EFFDURT3V2 + + + Effectif durée hebdomadaire 3 + + + fr.insee + k266f9xb-QOP-k2lyd4ep + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266sq43 + 1 + + EFFDURT4V2 + + + Effectif durée hebdomadaire 4 + + + fr.insee + k266f9xb-QOP-k2ly02y2 + 1 + OutParameter + + + fr.insee + k266f9xb + 1 + QuestionGrid + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266iegj + 1 + + HEURSUPV2 + + + HEUSUPV2 label + + + fr.insee + k1bv09kz-QOP-k1bvq05b + 1 + OutParameter + + + fr.insee + k1bv09kz + 1 + QuestionItem + + + + + 0 + 99999999 + + Decimal + + + + + fr.insee + k266pdm7 + 1 + + EFFHSUPV2 + + + EFFHSUPV2 label + + + fr.insee + k1buzukh-QOP-k1bvm3md + 1 + OutParameter + + + fr.insee + k1buzukh + 1 + QuestionItem + + + + + 0 + 999999 + + Decimal + + + + + fr.insee + k266qqv2 + 1 + + HEURCOMPV2 + + + HEURCOMPV2 label + + + fr.insee + k1bv6jho-QOP-k1bvgm31 + 1 + OutParameter + + + fr.insee + k1bv6jho + 1 + QuestionItem + + + + + 0 + 99999999 + + Decimal + + + + + fr.insee + k1c7m2kn + 1 + + EFFAPP + + + Effectif apprentis + + + fr.insee + k1c7k8tv-QOP-k1c7xo1f + 1 + OutParameter + + + fr.insee + k1c7k8tv + 1 + QuestionItem + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k1c9ly5y + 1 + + FILSMIC + + + Bénéficiaire du smic + + + fr.insee + k1c9e2em-QOP-k1c9y1a4 + 1 + OutParameter + + + fr.insee + k1c9e2em + 1 + QuestionItem + + + + + fr.insee + k1bxcxuy + 1 + CodeList + + + + + + fr.insee + k1c9vwbl + 1 + + EFFSMIC + + + Effectif smic + + + fr.insee + k1c9rr20-QOP-k1c9k5al + 1 + OutParameter + + + fr.insee + k1c9rr20 + 1 + QuestionItem + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k24ptivk + 1 + + EFFSMICTC + + + l'effectif smic à temps complet + + + fr.insee + k24pbhww-QOP-k2lxyxvc + 1 + OutParameter + + + fr.insee + k24pbhww + 1 + QuestionGrid + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k24pdx8c + 1 + + EFFSMICTP + + + l'effectif smic à temps partiel + + + fr.insee + k24pbhww-QOP-k2lydycm + 1 + OutParameter + + + fr.insee + k24pbhww + 1 + QuestionGrid + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k24pgwrc + 1 + + EFFSMICF + + + Effectif smic femmes + + + fr.insee + k24pfxg4-QOP-k2lyix6b + 1 + OutParameter + + + fr.insee + k24pfxg4 + 1 + QuestionGrid + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k24psgug + 1 + + EFFSMICH + + + Effectif smic hommes + + + fr.insee + k24pfxg4-QOP-k2lyb54a + 1 + OutParameter + + + fr.insee + k24pfxg4 + 1 + QuestionGrid + + + + + 0 + 99999 + + Decimal + + + + + fr.insee + k1bxviw5 + 1 + + EMPVAC + + + Emplois vacants + + + fr.insee + k1bwzjsr-QOP-k1bxpipe + 1 + OutParameter + + + fr.insee + k1bwzjsr + 1 + QuestionItem + + + + + fr.insee + k1bxcxuy + 1 + CodeList + + + + + + fr.insee + k2dim4cj + 1 + + NBVAC + + + NBVACTOT label + + + fr.insee + k2dj1xk8-QOP-k2disena + 1 + OutParameter + + + fr.insee + k2dj1xk8 + 1 + QuestionItem + + + + + 0 + 9999 + + Decimal + + + + + fr.insee + k2diqzke + 1 + + NBVACNC + + + Emplois nouvellement créés-Nombre + + + fr.insee + k1c7abcz-QOP-k2ly75po + 1 + OutParameter + + + fr.insee + k1c7abcz + 1 + QuestionGrid + + + + + 0 + 9999 + + Decimal + + + + + fr.insee + k2dipmwr + 1 + + NBVACIN + + + Emplois inoccupés-Nombre + + + fr.insee + k1c7abcz-QOP-k2lygv0h + 1 + OutParameter + + + fr.insee + k1c7abcz + 1 + QuestionGrid + + + + + 0 + 9999 + + Decimal + + + + + fr.insee + k2dilv9c + 1 + + NBVACOC + + + Emplois encore occupés et sur le point de se libérer-Nombre + + + fr.insee + k1c7abcz-QOP-k2lxzd84 + 1 + OutParameter + + + fr.insee + k1c7abcz + 1 + QuestionGrid + + + + + 0 + 9999 + + Decimal + + + + + fr.insee + k1ca6ly8 + 1 + + CONVPRINC + + + CONVPRINC label + + + fr.insee + k1ca4y9c-QOP-k1ca8upj + 1 + OutParameter + + + fr.insee + k1ca4y9c + 1 + QuestionItem + + + + + fr.insee + k1c9zo2z + 1 + CodeList + + + + + + fr.insee + k2ei3ni71 + 1 + + IDCCCORR + + + IDCCCORR label + + + fr.insee + k1ca9e2p-QOP-k2dj358p1 + 1 + OutParameter + + + fr.insee + k1ca9e2p + 1 + QuestionItem + + + + + + + fr.insee + k2ei3ni72 + 1 + + CONVCOLLCORR + + + AUTRECONVCOLLV3 label + + + fr.insee + k1ca9e2p-QOP-k2dj358p2 + 1 + OutParameter + + + fr.insee + k1ca9e2p + 1 + QuestionItem + + + + + + + + fr.insee + INSEE-SIMPSONS-PIS-1 + 1 + + SIMPSONS + + + Processing instructions of the Simpsons questionnaire + + + fr.insee + k2aan9fp-GI + 1 + + + + fr.insee + k2a7aq9p + 1 + Variable + + + fr.insee + k2a7fmb4 + 1 + Variable + + + fr.insee + k2a7jvb7 + 1 + Variable + + + fr.insee + k2a7pl6p + 1 + Variable + + + fr.insee + k2a7i2qr + 1 + Variable + + + fr.insee + k2a7jg6j + 1 + Variable + + + fr.insee + k2a7bhml + 1 + Variable + + + fr.insee + k2a78u8g + 1 + Variable + + + fr.insee + k2a7bnvo + 1 + Variable + + + fr.insee + k2a7hfav + 1 + Variable + + + fr.insee + k2a7s0aq + 1 + Variable + + + fr.insee + k2a7c8u2 + 1 + Variable + + + + xpath + + fr.insee + k2aan9fp-IP-1 + 1 + + EFF01V2 + + + + fr.insee + k2aan9fp-IP-2 + 1 + + EFF02V2 + + + + fr.insee + k2aan9fp-IP-3 + 1 + + EFF03V2 + + + + fr.insee + k2aan9fp-IP-4 + 1 + + EFF04V2 + + + + fr.insee + k2aan9fp-IP-5 + 1 + + EFF05V2 + + + + fr.insee + k2aan9fp-IP-6 + 1 + + EFF06V2 + + + + fr.insee + k2aan9fp-IP-7 + 1 + + EFF07V2 + + + + fr.insee + k2aan9fp-IP-8 + 1 + + EFF08V2 + + + + fr.insee + k2aan9fp-IP-9 + 1 + + EFF09V2 + + + + fr.insee + k2aan9fp-IP-10 + 1 + + EFF10V2 + + + + fr.insee + k2aan9fp-IP-11 + 1 + + EFF11V2 + + + + fr.insee + k2aan9fp-IP-12 + 1 + + EFF12V2 + + + + fr.insee + k2aan9fp-GOP + 1 + + + + fr.insee + k1uraed0-QOP-k2ly52bo + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-1 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly6djw + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-2 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly71jj + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-3 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lycks7 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-4 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly1q7e + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-5 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lya761 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-6 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyakk8 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-7 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly0k67 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-8 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyh5b5 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-9 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyfnfl + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-10 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lxzuhy + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-11 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly7rox + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-12 + 1 + InParameter + + + k2aan9fp-IP-1 + k2aan9fp-IP-2 + k2aan9fp-IP-3 + k2aan9fp-IP-4 + k2aan9fp-IP-5 + k2aan9fp-IP-6 + k2aan9fp-IP-7 + k2aan9fp-IP-8 + k2aan9fp-IP-9 + k2aan9fp-IP-10 + k2aan9fp-IP-11 + k2aan9fp-IP-12 + + + + fr.insee + Sequence-k0hy96wtbis-m1 + 1 + Sequence + + + + fr.insee + k2ab1ect-GI + 1 + + + + fr.insee + k2aan9fp + 1 + Variable + + + fr.insee + k1uqf158 + 1 + Variable + + + + xpath + + fr.insee + k2ab1ect-IP-1 + 1 + + EFFTABV2 + + + + fr.insee + k2ab1ect-IP-2 + 1 + + EFFTOTV2 + + + + fr.insee + k2ab1ect-GOP + 1 + + + + fr.insee + k2aan9fp-GOP + 1 + OutParameter + + + fr.insee + k2ab1ect-IP-1 + 1 + InParameter + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k2ab1ect-IP-2 + 1 + InParameter + + + k2ab1ect-IP-2 - k2ab1ect-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m1 + 1 + Sequence + + + + fr.insee + k2ej7p1i-GI + 1 + + + + fr.insee + k266h1um + 1 + Variable + + + fr.insee + k1uqu9d2 + 1 + Variable + + + fr.insee + k1urhpos + 1 + Variable + + + fr.insee + k1ur1d90 + 1 + Variable + + + fr.insee + k1ur151t + 1 + Variable + + + fr.insee + k1ur2n5x + 1 + Variable + + + + xpath + + fr.insee + k2ej7p1i-IP-1 + 1 + + EFFTP + + + + fr.insee + k2ej7p1i-IP-2 + 1 + + EFFDURF + + + + fr.insee + k2ej7p1i-IP-3 + 1 + + EFFDURT1 + + + + fr.insee + k2ej7p1i-IP-4 + 1 + + EFFDURT2 + + + + fr.insee + k2ej7p1i-IP-5 + 1 + + EFFDURT3 + + + + fr.insee + k2ej7p1i-IP-6 + 1 + + EFFDURT4 + + + + fr.insee + k2ej7p1i-GOP + 1 + + + + fr.insee + k266tqxw-QOP-k266s9np + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-1 + 1 + InParameter + + + + + fr.insee + k1uqp04a-QOP-k1urc3ep + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-2 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly30pv + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-3 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lygkxt + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-4 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lych1o + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-5 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lyhlun + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-6 + 1 + InParameter + + + k2ej7p1i-IP-3 + k2ej7p1i-IP-4 + k2ej7p1i-IP-5 + k2ej7p1i-IP-6 + k2ej7p1i-IP-2 + k2ej7p1i-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m1 + 1 + Sequence + + + + fr.insee + k2eje58b-GI + 1 + + + + fr.insee + k2enk9rt + 1 + Variable + + + fr.insee + k2enx5dn + 1 + Variable + + + fr.insee + k2enilgx + 1 + Variable + + + + xpath + + fr.insee + k2eje58b-IP-1 + 1 + + ESTCOCHE1 + + + + fr.insee + k2eje58b-IP-2 + 1 + + ESTCOCHE2 + + + + fr.insee + k2eje58b-IP-3 + 1 + + ESTCOCHE3 + + + + fr.insee + k2eje58b-GOP + 1 + + + + fr.insee + k1cav4yq-QOP-k2ly70ug + 1 + OutParameter + + + fr.insee + k2eje58b-IP-1 + 1 + InParameter + + + + + fr.insee + k1cav4yq-QOP-k2lyatvp + 1 + OutParameter + + + fr.insee + k2eje58b-IP-2 + 1 + InParameter + + + + + fr.insee + k1cav4yq-QOP-k2lyifac + 1 + OutParameter + + + fr.insee + k2eje58b-IP-3 + 1 + InParameter + + + number(if( k2eje58b-IP-1 = '') then '0' else '1') + number(if( k2eje58b-IP-2 = '') then '0' else '1') + number(if( k2eje58b-IP-3 = '') then '0' else '1') + + + + fr.insee + Sequence-k0hy96wtbis-m1 + 1 + Sequence + + + + fr.insee + k2ek3jtf-GI + 1 + + + + fr.insee + k1uqj4j9 + 1 + Variable + + + fr.insee + k266gght + 1 + Variable + + + fr.insee + k266rofi + 1 + Variable + + + fr.insee + k266srsd + 1 + Variable + + + fr.insee + k266fpm6 + 1 + Variable + + + fr.insee + k266sq43 + 1 + Variable + + + + xpath + + fr.insee + k2ek3jtf-IP-1 + 1 + + EFFTPV2 + + + + fr.insee + k2ek3jtf-IP-2 + 1 + + EFFDURFV2 + + + + fr.insee + k2ek3jtf-IP-3 + 1 + + EFFDURT1V2 + + + + fr.insee + k2ek3jtf-IP-4 + 1 + + EFFDURT2V2 + + + + fr.insee + k2ek3jtf-IP-5 + 1 + + EFFDURT3V2 + + + + fr.insee + k2ek3jtf-IP-6 + 1 + + EFFDURT4V2 + + + + fr.insee + k2ek3jtf-GOP + 1 + + + + fr.insee + k1uqg8k9-QOP-k1uql8iq + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-1 + 1 + InParameter + + + + + fr.insee + k266rlfn-QOP-k266c5i0 + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-2 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly2n1h + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-3 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lybzaz + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-4 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyd4ep + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-5 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly02y2 + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-6 + 1 + InParameter + + + k2ek3jtf-IP-3 + k2ek3jtf-IP-4 + k2ek3jtf-IP-5 + k2ek3jtf-IP-6 + k2ek3jtf-IP-2 + k2ek3jtf-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m1 + 1 + Sequence + + + + fr.insee + k2aan9fp-GI + 1 + + + + fr.insee + k2a7aq9p + 1 + Variable + + + fr.insee + k2a7fmb4 + 1 + Variable + + + fr.insee + k2a7jvb7 + 1 + Variable + + + fr.insee + k2a7pl6p + 1 + Variable + + + fr.insee + k2a7i2qr + 1 + Variable + + + fr.insee + k2a7jg6j + 1 + Variable + + + fr.insee + k2a7bhml + 1 + Variable + + + fr.insee + k2a78u8g + 1 + Variable + + + fr.insee + k2a7bnvo + 1 + Variable + + + fr.insee + k2a7hfav + 1 + Variable + + + fr.insee + k2a7s0aq + 1 + Variable + + + fr.insee + k2a7c8u2 + 1 + Variable + + + + xpath + + fr.insee + k2aan9fp-IP-1 + 1 + + EFF01V2 + + + + fr.insee + k2aan9fp-IP-2 + 1 + + EFF02V2 + + + + fr.insee + k2aan9fp-IP-3 + 1 + + EFF03V2 + + + + fr.insee + k2aan9fp-IP-4 + 1 + + EFF04V2 + + + + fr.insee + k2aan9fp-IP-5 + 1 + + EFF05V2 + + + + fr.insee + k2aan9fp-IP-6 + 1 + + EFF06V2 + + + + fr.insee + k2aan9fp-IP-7 + 1 + + EFF07V2 + + + + fr.insee + k2aan9fp-IP-8 + 1 + + EFF08V2 + + + + fr.insee + k2aan9fp-IP-9 + 1 + + EFF09V2 + + + + fr.insee + k2aan9fp-IP-10 + 1 + + EFF10V2 + + + + fr.insee + k2aan9fp-IP-11 + 1 + + EFF11V2 + + + + fr.insee + k2aan9fp-IP-12 + 1 + + EFF12V2 + + + + fr.insee + k2aan9fp-GOP + 1 + + + + fr.insee + k1uraed0-QOP-k2ly52bo + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-1 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly6djw + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-2 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly71jj + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-3 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lycks7 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-4 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly1q7e + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-5 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lya761 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-6 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyakk8 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-7 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly0k67 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-8 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyh5b5 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-9 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyfnfl + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-10 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lxzuhy + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-11 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly7rox + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-12 + 1 + InParameter + + + k2aan9fp-IP-1 + k2aan9fp-IP-2 + k2aan9fp-IP-3 + k2aan9fp-IP-4 + k2aan9fp-IP-5 + k2aan9fp-IP-6 + k2aan9fp-IP-7 + k2aan9fp-IP-8 + k2aan9fp-IP-9 + k2aan9fp-IP-10 + k2aan9fp-IP-11 + k2aan9fp-IP-12 + + + + fr.insee + Sequence-k0hy96wtbis-m2 + 1 + Sequence + + + + fr.insee + k2ab1ect-GI + 1 + + + + fr.insee + k2aan9fp + 1 + Variable + + + fr.insee + k1uqf158 + 1 + Variable + + + + xpath + + fr.insee + k2ab1ect-IP-1 + 1 + + EFFTABV2 + + + + fr.insee + k2ab1ect-IP-2 + 1 + + EFFTOTV2 + + + + fr.insee + k2ab1ect-GOP + 1 + + + + fr.insee + k2aan9fp-GOP + 1 + OutParameter + + + fr.insee + k2ab1ect-IP-1 + 1 + InParameter + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k2ab1ect-IP-2 + 1 + InParameter + + + k2ab1ect-IP-2 - k2ab1ect-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m2 + 1 + Sequence + + + + fr.insee + k2ej7p1i-GI + 1 + + + + fr.insee + k266h1um + 1 + Variable + + + fr.insee + k1uqu9d2 + 1 + Variable + + + fr.insee + k1urhpos + 1 + Variable + + + fr.insee + k1ur1d90 + 1 + Variable + + + fr.insee + k1ur151t + 1 + Variable + + + fr.insee + k1ur2n5x + 1 + Variable + + + + xpath + + fr.insee + k2ej7p1i-IP-1 + 1 + + EFFTP + + + + fr.insee + k2ej7p1i-IP-2 + 1 + + EFFDURF + + + + fr.insee + k2ej7p1i-IP-3 + 1 + + EFFDURT1 + + + + fr.insee + k2ej7p1i-IP-4 + 1 + + EFFDURT2 + + + + fr.insee + k2ej7p1i-IP-5 + 1 + + EFFDURT3 + + + + fr.insee + k2ej7p1i-IP-6 + 1 + + EFFDURT4 + + + + fr.insee + k2ej7p1i-GOP + 1 + + + + fr.insee + k266tqxw-QOP-k266s9np + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-1 + 1 + InParameter + + + + + fr.insee + k1uqp04a-QOP-k1urc3ep + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-2 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly30pv + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-3 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lygkxt + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-4 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lych1o + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-5 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lyhlun + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-6 + 1 + InParameter + + + k2ej7p1i-IP-3 + k2ej7p1i-IP-4 + k2ej7p1i-IP-5 + k2ej7p1i-IP-6 + k2ej7p1i-IP-2 + k2ej7p1i-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m2 + 1 + Sequence + + + + fr.insee + k2eje58b-GI + 1 + + + + fr.insee + k2enk9rt + 1 + Variable + + + fr.insee + k2enx5dn + 1 + Variable + + + fr.insee + k2enilgx + 1 + Variable + + + + xpath + + fr.insee + k2eje58b-IP-1 + 1 + + ESTCOCHE1 + + + + fr.insee + k2eje58b-IP-2 + 1 + + ESTCOCHE2 + + + + fr.insee + k2eje58b-IP-3 + 1 + + ESTCOCHE3 + + + + fr.insee + k2eje58b-GOP + 1 + + + + fr.insee + k1cav4yq-QOP-k2ly70ug + 1 + OutParameter + + + fr.insee + k2eje58b-IP-1 + 1 + InParameter + + + + + fr.insee + k1cav4yq-QOP-k2lyatvp + 1 + OutParameter + + + fr.insee + k2eje58b-IP-2 + 1 + InParameter + + + + + fr.insee + k1cav4yq-QOP-k2lyifac + 1 + OutParameter + + + fr.insee + k2eje58b-IP-3 + 1 + InParameter + + + number(if( k2eje58b-IP-1 = '') then '0' else '1') + number(if( k2eje58b-IP-2 = '') then '0' else '1') + number(if( k2eje58b-IP-3 = '') then '0' else '1') + + + + fr.insee + Sequence-k0hy96wtbis-m2 + 1 + Sequence + + + + fr.insee + k2ek3jtf-GI + 1 + + + + fr.insee + k1uqj4j9 + 1 + Variable + + + fr.insee + k266gght + 1 + Variable + + + fr.insee + k266rofi + 1 + Variable + + + fr.insee + k266srsd + 1 + Variable + + + fr.insee + k266fpm6 + 1 + Variable + + + fr.insee + k266sq43 + 1 + Variable + + + + xpath + + fr.insee + k2ek3jtf-IP-1 + 1 + + EFFTPV2 + + + + fr.insee + k2ek3jtf-IP-2 + 1 + + EFFDURFV2 + + + + fr.insee + k2ek3jtf-IP-3 + 1 + + EFFDURT1V2 + + + + fr.insee + k2ek3jtf-IP-4 + 1 + + EFFDURT2V2 + + + + fr.insee + k2ek3jtf-IP-5 + 1 + + EFFDURT3V2 + + + + fr.insee + k2ek3jtf-IP-6 + 1 + + EFFDURT4V2 + + + + fr.insee + k2ek3jtf-GOP + 1 + + + + fr.insee + k1uqg8k9-QOP-k1uql8iq + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-1 + 1 + InParameter + + + + + fr.insee + k266rlfn-QOP-k266c5i0 + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-2 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly2n1h + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-3 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lybzaz + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-4 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyd4ep + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-5 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly02y2 + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-6 + 1 + InParameter + + + k2ek3jtf-IP-3 + k2ek3jtf-IP-4 + k2ek3jtf-IP-5 + k2ek3jtf-IP-6 + k2ek3jtf-IP-2 + k2ek3jtf-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m2 + 1 + Sequence + + + + fr.insee + k2aan9fp-GI + 1 + + + + fr.insee + k2a7aq9p + 1 + Variable + + + fr.insee + k2a7fmb4 + 1 + Variable + + + fr.insee + k2a7jvb7 + 1 + Variable + + + fr.insee + k2a7pl6p + 1 + Variable + + + fr.insee + k2a7i2qr + 1 + Variable + + + fr.insee + k2a7jg6j + 1 + Variable + + + fr.insee + k2a7bhml + 1 + Variable + + + fr.insee + k2a78u8g + 1 + Variable + + + fr.insee + k2a7bnvo + 1 + Variable + + + fr.insee + k2a7hfav + 1 + Variable + + + fr.insee + k2a7s0aq + 1 + Variable + + + fr.insee + k2a7c8u2 + 1 + Variable + + + + xpath + + fr.insee + k2aan9fp-IP-1 + 1 + + EFF01V2 + + + + fr.insee + k2aan9fp-IP-2 + 1 + + EFF02V2 + + + + fr.insee + k2aan9fp-IP-3 + 1 + + EFF03V2 + + + + fr.insee + k2aan9fp-IP-4 + 1 + + EFF04V2 + + + + fr.insee + k2aan9fp-IP-5 + 1 + + EFF05V2 + + + + fr.insee + k2aan9fp-IP-6 + 1 + + EFF06V2 + + + + fr.insee + k2aan9fp-IP-7 + 1 + + EFF07V2 + + + + fr.insee + k2aan9fp-IP-8 + 1 + + EFF08V2 + + + + fr.insee + k2aan9fp-IP-9 + 1 + + EFF09V2 + + + + fr.insee + k2aan9fp-IP-10 + 1 + + EFF10V2 + + + + fr.insee + k2aan9fp-IP-11 + 1 + + EFF11V2 + + + + fr.insee + k2aan9fp-IP-12 + 1 + + EFF12V2 + + + + fr.insee + k2aan9fp-GOP + 1 + + + + fr.insee + k1uraed0-QOP-k2ly52bo + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-1 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly6djw + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-2 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly71jj + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-3 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lycks7 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-4 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly1q7e + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-5 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lya761 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-6 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyakk8 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-7 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly0k67 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-8 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyh5b5 + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-9 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lyfnfl + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-10 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2lxzuhy + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-11 + 1 + InParameter + + + + + fr.insee + k1uraed0-QOP-k2ly7rox + 1 + OutParameter + + + fr.insee + k2aan9fp-IP-12 + 1 + InParameter + + + k2aan9fp-IP-1 + k2aan9fp-IP-2 + k2aan9fp-IP-3 + k2aan9fp-IP-4 + k2aan9fp-IP-5 + k2aan9fp-IP-6 + k2aan9fp-IP-7 + k2aan9fp-IP-8 + k2aan9fp-IP-9 + k2aan9fp-IP-10 + k2aan9fp-IP-11 + k2aan9fp-IP-12 + + + + fr.insee + Sequence-k0hy96wtbis-m3 + 1 + Sequence + + + + fr.insee + k2ab1ect-GI + 1 + + + + fr.insee + k2aan9fp + 1 + Variable + + + fr.insee + k1uqf158 + 1 + Variable + + + + xpath + + fr.insee + k2ab1ect-IP-1 + 1 + + EFFTABV2 + + + + fr.insee + k2ab1ect-IP-2 + 1 + + EFFTOTV2 + + + + fr.insee + k2ab1ect-GOP + 1 + + + + fr.insee + k2aan9fp-GOP + 1 + OutParameter + + + fr.insee + k2ab1ect-IP-1 + 1 + InParameter + + + + + fr.insee + k0hy7wtn-QOP-k0hyyec6 + 1 + OutParameter + + + fr.insee + k2ab1ect-IP-2 + 1 + InParameter + + + k2ab1ect-IP-2 - k2ab1ect-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m3 + 1 + Sequence + + + + fr.insee + k2ej7p1i-GI + 1 + + + + fr.insee + k266h1um + 1 + Variable + + + fr.insee + k1uqu9d2 + 1 + Variable + + + fr.insee + k1urhpos + 1 + Variable + + + fr.insee + k1ur1d90 + 1 + Variable + + + fr.insee + k1ur151t + 1 + Variable + + + fr.insee + k1ur2n5x + 1 + Variable + + + + xpath + + fr.insee + k2ej7p1i-IP-1 + 1 + + EFFTP + + + + fr.insee + k2ej7p1i-IP-2 + 1 + + EFFDURF + + + + fr.insee + k2ej7p1i-IP-3 + 1 + + EFFDURT1 + + + + fr.insee + k2ej7p1i-IP-4 + 1 + + EFFDURT2 + + + + fr.insee + k2ej7p1i-IP-5 + 1 + + EFFDURT3 + + + + fr.insee + k2ej7p1i-IP-6 + 1 + + EFFDURT4 + + + + fr.insee + k2ej7p1i-GOP + 1 + + + + fr.insee + k266tqxw-QOP-k266s9np + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-1 + 1 + InParameter + + + + + fr.insee + k1uqp04a-QOP-k1urc3ep + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-2 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2ly30pv + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-3 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lygkxt + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-4 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lych1o + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-5 + 1 + InParameter + + + + + fr.insee + k1ura6hp-QOP-k2lyhlun + 1 + OutParameter + + + fr.insee + k2ej7p1i-IP-6 + 1 + InParameter + + + k2ej7p1i-IP-3 + k2ej7p1i-IP-4 + k2ej7p1i-IP-5 + k2ej7p1i-IP-6 + k2ej7p1i-IP-2 + k2ej7p1i-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m3 + 1 + Sequence + + + + fr.insee + k2eje58b-GI + 1 + + + + fr.insee + k2enk9rt + 1 + Variable + + + fr.insee + k2enx5dn + 1 + Variable + + + fr.insee + k2enilgx + 1 + Variable + + + + xpath + + fr.insee + k2eje58b-IP-1 + 1 + + ESTCOCHE1 + + + + fr.insee + k2eje58b-IP-2 + 1 + + ESTCOCHE2 + + + + fr.insee + k2eje58b-IP-3 + 1 + + ESTCOCHE3 + + + + fr.insee + k2eje58b-GOP + 1 + + + + fr.insee + k1cav4yq-QOP-k2ly70ug + 1 + OutParameter + + + fr.insee + k2eje58b-IP-1 + 1 + InParameter + + + + + fr.insee + k1cav4yq-QOP-k2lyatvp + 1 + OutParameter + + + fr.insee + k2eje58b-IP-2 + 1 + InParameter + + + + + fr.insee + k1cav4yq-QOP-k2lyifac + 1 + OutParameter + + + fr.insee + k2eje58b-IP-3 + 1 + InParameter + + + number(if( k2eje58b-IP-1 = '') then '0' else '1') + number(if( k2eje58b-IP-2 = '') then '0' else '1') + number(if( k2eje58b-IP-3 = '') then '0' else '1') + + + + fr.insee + Sequence-k0hy96wtbis-m3 + 1 + Sequence + + + + fr.insee + k2ek3jtf-GI + 1 + + + + fr.insee + k1uqj4j9 + 1 + Variable + + + fr.insee + k266gght + 1 + Variable + + + fr.insee + k266rofi + 1 + Variable + + + fr.insee + k266srsd + 1 + Variable + + + fr.insee + k266fpm6 + 1 + Variable + + + fr.insee + k266sq43 + 1 + Variable + + + + xpath + + fr.insee + k2ek3jtf-IP-1 + 1 + + EFFTPV2 + + + + fr.insee + k2ek3jtf-IP-2 + 1 + + EFFDURFV2 + + + + fr.insee + k2ek3jtf-IP-3 + 1 + + EFFDURT1V2 + + + + fr.insee + k2ek3jtf-IP-4 + 1 + + EFFDURT2V2 + + + + fr.insee + k2ek3jtf-IP-5 + 1 + + EFFDURT3V2 + + + + fr.insee + k2ek3jtf-IP-6 + 1 + + EFFDURT4V2 + + + + fr.insee + k2ek3jtf-GOP + 1 + + + + fr.insee + k1uqg8k9-QOP-k1uql8iq + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-1 + 1 + InParameter + + + + + fr.insee + k266rlfn-QOP-k266c5i0 + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-2 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly2n1h + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-3 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lybzaz + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-4 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2lyd4ep + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-5 + 1 + InParameter + + + + + fr.insee + k266f9xb-QOP-k2ly02y2 + 1 + OutParameter + + + fr.insee + k2ek3jtf-IP-6 + 1 + InParameter + + + k2ek3jtf-IP-3 + k2ek3jtf-IP-4 + k2ek3jtf-IP-5 + k2ek3jtf-IP-6 + k2ek3jtf-IP-2 + k2ek3jtf-IP-1 + + + + fr.insee + Sequence-k0hy96wtbis-m3 + 1 + Sequence + + + + + fr.insee + INSEE-SIMPSONS-MRS + 1 + + Liste de formats numériques et dates de + l'enquête + Numeric and DateTime list for the survey + + + fr.insee + INSEE-COMMUN-MNR-DateTimedate-YYYY-MM-DD + 1 + YYYY-MM-DD + date + + 1900-01-01 + format-date(current-date(),'[Y0001]-[M01]-[D01]') + + + + + + fr.insee + StudyUnit-k0hy96wtbis + 1 + + + fr.insee + DataCollection-k0hy96wtbis + 1 + + fr.insee + QuestionScheme-k0hy96wtbis + 1 + QuestionScheme + + + fr.insee + ControlConstructScheme-k0hy96wtbis + 1 + ControlConstructScheme + + + fr.insee + InterviewerInstructionScheme-k0hy96wtbis + 1 + InterviewerInstructionScheme + + + fr.insee + InstrumentScheme-k0hy96wtbis + 1 + + fr.insee + Instrument-k0hy96wtbis-m1 + 1 + + m1 + + + Enquête Acemo trimestrielle questionnaire M1 + + A définir + + fr.insee + Sequence-k0hy96wtbis-m1 + 1 + Sequence + + + + fr.insee + Instrument-k0hy96wtbis-m2 + 1 + + m2 + + + Enquête Acemo trimestrielle questionnaire M2 + + A définir + + fr.insee + Sequence-k0hy96wtbis-m2 + 1 + Sequence + + + + fr.insee + Instrument-k0hy96wtbis-m3 + 1 + + m3 + + + Enquête Acemo trimestrielle questionnaire M3 + + A définir + + fr.insee + Sequence-k0hy96wtbis-m3 + 1 + Sequence + + + + + + \ No newline at end of file diff --git a/src/test/resources/params/in-to-out/multimodel/params-fr.xml b/src/test/resources/params/in-to-out/multimodel/params-fr.xml new file mode 100644 index 000000000..dc1c3f3f4 --- /dev/null +++ b/src/test/resources/params/in-to-out/multimodel/params-fr.xml @@ -0,0 +1,27 @@ + + + + ddi + fr + + ddi-dereferencing + ddi-cleaning + ddi-titling + + fr-browsing + fr-fix-adherence + + + + + default + + acemotrim-2020-t01 + + + fr + en + + + + From ad517db492862e9e32b95ae4507aff49d724ad0c Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 15:01:17 +0100 Subject: [PATCH 08/40] MultiModel : renaming some variable --- .../insee/eno/service/MultiModelService.java | 46 +++++++++++-------- .../java/fr/insee/eno/utils/FileArchiver.java | 2 +- .../fr/insee/eno/utils/FolderCleaner.java | 6 +-- 3 files changed, 32 insertions(+), 22 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index c120d87a6..5d7d12136 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -5,6 +5,9 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; import java.util.List; import java.util.zip.ZipOutputStream; @@ -31,13 +34,13 @@ public class MultiModelService { private DDISplittingPreprocessor ddiSplitPreprocessor = new DDISplittingPreprocessor(); /** - * It generates archive file using parameterizedGenerationService + * It generates Zip file using parameterizedGenerationService * @param inputFile : the xml input File which contains multiple ddi instrument in the same file (required) * @param params : java object ENOParameter (required) * @param metadata : InputStream of metadata xml file (optional) * @param specificTreatment : InputStream of an xsl sheet (optional) * @param mapping : InputStream of a xml file using in FRModeleColtranePostProcessor (optional) - * @return the zip archive file which contains all generated files + * @return the Zip file which contains all generated files * @throws Exception */ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception{ @@ -46,18 +49,21 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr String surveyName = params.getParameters()!=null?params.getParameters().getCampagne():"test"; cleanTempFolder(surveyName); + File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); + List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); - File outputArchive = File.createTempFile(surveyName+"-", ".zip", Constants.TEMP_FOLDER); - FileOutputStream fileOutputStream = new FileOutputStream(outputArchive); + Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); + Files.deleteIfExists(outputZipPath); + File outputZip = new File(outputZipPath.toString()); + FileOutputStream fileOutputStream = new FileOutputStream(outputZip); ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); - LOGGER.info("Archive file initalized to :"+outputArchive.getAbsolutePath()); + LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); for(File ddiFile : ddiFiles) { File output = parameterizedGenerationService.generateQuestionnaire(ddiFile, params, metadata, specificTreatment, mapping); FileArchiver.writeToZipFile(output.getAbsolutePath(), zipOutputStream); FolderCleaner cleanService = new FolderCleaner(); - File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); cleanService.specialCleaningFiles(folderTemp, output.getParentFile().getName()); } @@ -65,18 +71,18 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr fileOutputStream.close(); LOGGER.info("MultiModel Generation of questionnaire -- END --"); - return outputArchive; + return outputZip; } /** - * It generates archive file using parameterizedGenerationService + * It generates a Zip file using parameterizedGenerationService * @param inputFile : the xml input File which contains multiple ddi instrument in the same file (required) * @param params : InputStream of parameters xml file (required) * @param metadata : InputStream of metadata xml file (optional) * @param specificTreatment : InputStream of an xsl sheet (optional) * @param mapping : InputStream of a xml file using in FRModeleColtranePostProcessor (optional) - * @return the zip archive file which contains all generated files + * @return the Zip file which contains all generated files * @throws Exception */ public File generateQuestionnaire(File inputFile, InputStream params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception { @@ -87,19 +93,23 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea ENOParameters enoParameters = valorizatorParameters.getParameters(new ByteArrayInputStream(paramsBytes)); String surveyName = enoParameters.getParameters()!=null?enoParameters.getParameters().getCampagne():"test"; cleanTempFolder(surveyName); - + + File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); + + List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); - File outputArchive = File.createTempFile(surveyName+"-", ".zip", Constants.TEMP_FOLDER); - FileOutputStream fileOutputStream = new FileOutputStream(outputArchive); + Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); + Files.deleteIfExists(outputZipPath); + File outputZip = new File(outputZipPath.toString()); + FileOutputStream fileOutputStream = new FileOutputStream(outputZip); ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); - LOGGER.info("Archive file initalized to :"+outputArchive.getAbsolutePath()); + LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); for(File ddiFile : ddiFiles) { File output = parameterizedGenerationService.generateQuestionnaire(ddiFile, new ByteArrayInputStream(paramsBytes), metadata, specificTreatment, mapping); FileArchiver.writeToZipFile(output.getAbsolutePath(), zipOutputStream); - FolderCleaner cleanService = new FolderCleaner(); - File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); + FolderCleaner cleanService = new FolderCleaner(); cleanService.specialCleaningFiles(folderTemp, output.getParentFile().getName()); } @@ -107,18 +117,18 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea fileOutputStream.close(); LOGGER.info("MultiModel Generation of questionnaire -- END --"); - return outputArchive; + return outputZip; } /** - * It generates archive file using parameterizedGenerationService + * It generates Zip file using parameterizedGenerationService * @param inputFile : the xml input File which contains multiple ddi instrument in the same file (required) * @param params : xml File of ENOParameter (required) * @param metadata : xml File of metadata (optional) * @param specificTreatment : xsl file of the xsl sheet (optional) * @param mapping : a xml File using in FRModeleColtranePostProcessor (optional) - * @return the zip archive file which contains all generated file + * @return the Zip file which contains all generated file * @throws Exception */ public File generateQuestionnaire(File inputFile, File params, File metadata, File specificTreatment, File mapping) throws Exception{ diff --git a/src/main/java/fr/insee/eno/utils/FileArchiver.java b/src/main/java/fr/insee/eno/utils/FileArchiver.java index aab68fc34..0ffc2dd2f 100644 --- a/src/main/java/fr/insee/eno/utils/FileArchiver.java +++ b/src/main/java/fr/insee/eno/utils/FileArchiver.java @@ -16,7 +16,7 @@ public class FileArchiver { private static final Logger LOGGER = LoggerFactory.getLogger(FileArchiver.class); /** - * Add a file into Zip archive. + * Add a file into Zip file. * * @param filePath * @param zipStream diff --git a/src/main/java/fr/insee/eno/utils/FolderCleaner.java b/src/main/java/fr/insee/eno/utils/FolderCleaner.java index 53e16ecb6..c984a6111 100644 --- a/src/main/java/fr/insee/eno/utils/FolderCleaner.java +++ b/src/main/java/fr/insee/eno/utils/FolderCleaner.java @@ -73,13 +73,13 @@ public void cleanOneFolder(File folder) throws IOException { * @throws IOException * : FileNotfound / NoAccess mainly */ - public void specialCleaningFiles(File folder, String fileName) throws IOException { - logger.debug("Special Cleaning : " + folder+" (deleting files generated with '"+fileName+"' ddi model)"); + public void specialCleaningFiles(File folder, String modelName) throws IOException { + logger.debug("Special Cleaning : " + folder+" (deleting files generated with '"+modelName+"' ddi model)"); if (folder.exists() && Files.isDirectory(folder.toPath())) { File[] matchCleaningInput = folder.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { - return name.startsWith(fileName); + return name.startsWith(modelName); } }); for(File file : matchCleaningInput) { From 912be7e5a74a3464d536650014e0ac41b422278b Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Thu, 30 Jan 2020 15:09:20 +0100 Subject: [PATCH 09/40] Change Eno version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 829e7c3ed..85dbec4bb 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 fr.insee.eno eno-core - 2.0.0 + 2.0.1 jar Eno – Questionnaire generator From 1dc62189c8f5c08c277c7033a2c8e2a71aa3a263 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 12:54:48 +0100 Subject: [PATCH 10/40] FolderCleaner : add method - deleting all files in folder except one file --- .../fr/insee/eno/utils/FolderCleaner.java | 58 +++++++++++-------- 1 file changed, 34 insertions(+), 24 deletions(-) diff --git a/src/main/java/fr/insee/eno/utils/FolderCleaner.java b/src/main/java/fr/insee/eno/utils/FolderCleaner.java index c984a6111..46e23dddd 100644 --- a/src/main/java/fr/insee/eno/utils/FolderCleaner.java +++ b/src/main/java/fr/insee/eno/utils/FolderCleaner.java @@ -4,6 +4,7 @@ import java.io.FilenameFilter; import java.io.IOException; import java.nio.file.Files; +import java.nio.file.Paths; import org.apache.commons.io.FileUtils; import org.slf4j.Logger; @@ -23,14 +24,12 @@ public class FolderCleaner { /** * Method representing the Clean ant target : Cleaning the current - * questionnaireFolder (with the created survey name) Cleaning the temp - * folder Cleaning the test folder + * questionnaireFolder (with the created survey name) Cleaning the temp folder + * Cleaning the test folder * - * @param questionnaireFolder - * : the folder that has to be either created or cleaned (having - * the survey's name) - * @throws Exception - * : FileNotfound / NoAccess mainly + * @param questionnaireFolder : the folder that has to be either created or + * cleaned (having the survey's name) + * @throws Exception : FileNotfound / NoAccess mainly */ public void cleanTarget(String questionnaireFolder) throws Exception { @@ -53,38 +52,49 @@ public void cleanTarget(String questionnaireFolder) throws Exception { /** * Generic method to clean one folder * - * @param folder - * : the folder to be cleaned - * @throws IOException - * : FileNotfound / NoAccess mainly + * @param folder : the folder to be cleaned + * @throws IOException : FileNotfound / NoAccess mainly */ public void cleanOneFolder(File folder) throws IOException { logger.debug("Cleaning " + folder); if (folder.exists() && Files.isDirectory(folder.toPath())) { FileUtils.cleanDirectory(folder); - } + } } - + /** - * Generic method to clean one folder + * Method to clean all files in folder except one * - * @param folder - * : the folder to be cleaned - * @throws IOException - * : FileNotfound / NoAccess mainly + * @param folder : the folder to be cleaned + * @param generatedFile : the file to not delete + * @throws IOException : FileNotfound / NoAccess mainly */ - public void specialCleaningFiles(File folder, String modelName) throws IOException { - logger.debug("Special Cleaning : " + folder+" (deleting files generated with '"+modelName+"' ddi model)"); + public void cleanOneFolderExceptGeneratedFile(File folder, File generatedFile) throws IOException { + logger.debug("Special cleaning into : " + folder+" (deleting all files except : "+generatedFile.getName() +")"); if (folder.exists() && Files.isDirectory(folder.toPath())) { File[] matchCleaningInput = folder.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { - return name.startsWith(modelName); + if(Files.isDirectory(Paths.get(dir+"/"+name))){ + try { + cleanOneFolderExceptGeneratedFile(Paths.get(dir+"/"+name).toFile(),generatedFile); + } catch (IOException e) { + logger.error(e.getMessage()); + } + } + return !name.equals(generatedFile.getName()); } }); for(File file : matchCleaningInput) { - Files.delete(file.toPath()); - } - } + if(Files.isDirectory(file.toPath())) { + if(file.list().length==0) { + FileUtils.forceDelete(file); + } + } + else { + FileUtils.forceDelete(file); + } + } + } } } From e2449bdc2889178d045f40c60f61aa382263b665 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 12:55:42 +0100 Subject: [PATCH 11/40] Update ParameterizedGenerationService.java add an option to clean generated temp files --- .../ParameterizedGenerationService.java | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/ParameterizedGenerationService.java b/src/main/java/fr/insee/eno/service/ParameterizedGenerationService.java index 1bf4ba8d3..a2d2d3278 100644 --- a/src/main/java/fr/insee/eno/service/ParameterizedGenerationService.java +++ b/src/main/java/fr/insee/eno/service/ParameterizedGenerationService.java @@ -10,6 +10,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import fr.insee.eno.Constants; import fr.insee.eno.exception.EnoParametersException; import fr.insee.eno.parameters.ENOParameters; import fr.insee.eno.parameters.Pipeline; @@ -22,6 +23,7 @@ import fr.insee.eno.params.validation.ValidationMessage; import fr.insee.eno.params.validation.Validator; import fr.insee.eno.params.validation.ValidatorImpl; +import fr.insee.eno.utils.FolderCleaner; /** * Orchestrates the whole parameterized generation process. @@ -40,6 +42,8 @@ public class ParameterizedGenerationService { private boolean cleaningFolder; + private String surveyName; + public ParameterizedGenerationService() { this.pipelineGenerator = new PipeLineGeneratorImpl(); this.valorizatorParameters = new ValorizatorParametersImpl(); @@ -47,13 +51,14 @@ public ParameterizedGenerationService() { this.schemaValidator = new SchemaValidatorImpl(); this.cleaningFolder=true; } - - public ParameterizedGenerationService(boolean cleaningFolder) { + + public ParameterizedGenerationService(boolean cleaningFolder, String surveyName) { this.pipelineGenerator = new PipeLineGeneratorImpl(); this.valorizatorParameters = new ValorizatorParametersImpl(); this.validator = new ValidatorImpl(); this.schemaValidator = new SchemaValidatorImpl(); this.cleaningFolder=cleaningFolder; + this.surveyName=surveyName; } /** @@ -74,7 +79,7 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr if(valid.isValid()) { GenerationService generationService = pipelineGenerator.setPipeLine(pipeline); generationService.setCleaningFolder(cleaningFolder); - + ByteArrayOutputStream paramsFinal = valorizatorParameters.mergeParameters(params); LOGGER.info("Setting paramaters to the pipeline."); generationService.setParameters(paramsFinal); @@ -84,7 +89,7 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr generationService.setSpecificTreatment(specificTreatment); LOGGER.info("Setting mapping file to the pipeline."); generationService.setMapping(mapping); - String survey = params.getParameters()!=null?params.getParameters().getCampagne():"test"; + String survey = surveyName != null ? surveyName : params.getParameters() != null ? params.getParameters().getCampagne():"test"; output = generationService.generateQuestionnaire(inputFile, survey); paramsFinal.close(); } @@ -110,13 +115,13 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr public File generateQuestionnaire(File inputFile, InputStream params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception { LOGGER.info("Parameterized Generation of questionnaire -- STARTED --"); File output=null; - + if(params!=null) { byte[] paramsBytes = IOUtils.toByteArray(params); - + LOGGER.info("First validation ..."); ValidationMessage validSchema = schemaValidator.validate(new ByteArrayInputStream(paramsBytes)); - + if(validSchema.isValid()) { LOGGER.info(validSchema.getMessage()); LOGGER.info("Parameters reading ..."); @@ -141,9 +146,13 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea generationService.setSpecificTreatment(specificTreatment); LOGGER.info("Setting mapping file to the pipeline."); generationService.setMapping(mapping); - String survey = enoParameters.getParameters().getCampagne(); + String survey = surveyName!=null ? surveyName : enoParameters.getParameters().getCampagne(); output = generationService.generateQuestionnaire(inputFile, survey); paramsFinal.close(); + FolderCleaner cleanerService = new FolderCleaner(); + if(cleaningFolder) { + cleanerService.cleanOneFolderExceptGeneratedFile(new File(Constants.TEMP_FOLDER_PATH + "/" + survey), output); + } } else { LOGGER.error(valid.getMessage()); @@ -160,7 +169,7 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea LOGGER.error(error); throw new EnoParametersException(error); } - + LOGGER.info("Parameterized Generation of questionnaire -- FINISHED --"); return output; From 2073abadf7db7bb4c18963f25cb42ae8d786d06f Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 12:55:51 +0100 Subject: [PATCH 12/40] Update GenerationService.java --- src/main/java/fr/insee/eno/service/GenerationService.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/fr/insee/eno/service/GenerationService.java b/src/main/java/fr/insee/eno/service/GenerationService.java index 62774ea06..b0cfb342b 100644 --- a/src/main/java/fr/insee/eno/service/GenerationService.java +++ b/src/main/java/fr/insee/eno/service/GenerationService.java @@ -162,7 +162,6 @@ public void setCleaningFolder(boolean cleaning) { * */ public void cleanTempFolder(String name) throws IOException { - FolderCleaner cleanService = new FolderCleaner(); if (Constants.TEMP_FOLDER_PATH != null) { File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + name); cleanTempFolder(folderTemp); From 8d9472681496758209e67a7ac1bb6f6f1151e904 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 12:55:59 +0100 Subject: [PATCH 13/40] Update DDISplittingPreprocessor.java --- .../preprocessing/DDISplittingPreprocessor.java | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java b/src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java index e802baaab..6aa56aef5 100644 --- a/src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java +++ b/src/main/java/fr/insee/eno/preprocessing/DDISplittingPreprocessor.java @@ -20,16 +20,16 @@ */ public class DDISplittingPreprocessor { - private static final Logger logger = LoggerFactory.getLogger(DDISplittingPreprocessor.class); + private static final Logger LOGGER = LoggerFactory.getLogger(DDISplittingPreprocessor.class); private XslTransformation saxonService = new XslTransformation(); public List splitDDI(File inputFile, String survey) throws Exception { - logger.info("DDI splitting preprocessing Target : START"); + LOGGER.info("DDI splitting preprocessing Target : START"); String sUB_TEMP_FOLDER = Constants.sUB_TEMP_FOLDER(survey); // ----- Dereferencing - logger.debug("Dereferencing : -Input : " + inputFile + " -Output : " + Constants.tEMP_NULL_TMP(sUB_TEMP_FOLDER) + LOGGER.debug("Dereferencing : -Input : " + inputFile + " -Output : " + Constants.tEMP_NULL_TMP(sUB_TEMP_FOLDER) + " -Stylesheet : " + Constants.UTIL_DDI_SPLITTING_XSL + " -Parameters : " + sUB_TEMP_FOLDER); InputStream isDDI_DEREFERENCING_XSL = Constants.getInputStreamFromPath(Constants.UTIL_DDI_SPLITTING_XSL); @@ -47,7 +47,7 @@ public List splitDDI(File inputFile, String survey) throws Exception { isDDI_DEREFERENCING_XSL.close(); osTEMP_NULL_TMP.close(); // ----- Cleaning - logger.debug("Cleaning target"); + LOGGER.debug("Cleaning target"); File f = Constants.sUB_TEMP_FOLDER_FILE(survey); File[] matchCleaningInput = f.listFiles(new FilenameFilter() { @@ -58,12 +58,11 @@ public boolean accept(File dir, String name) { }); List outputFiles = new ArrayList(); - String cleaningInput = null; - logger.debug("Searching matching files in : " + sUB_TEMP_FOLDER); + LOGGER.debug("Searching matching files in : " + sUB_TEMP_FOLDER); for (File file : matchCleaningInput) { if(!file.isDirectory()) { - logger.debug("Found : " + file.getAbsolutePath()); + LOGGER.debug("Found : " + file.getAbsolutePath()); outputFiles.add(file); } } @@ -71,7 +70,7 @@ public boolean accept(File dir, String name) { throw new EnoGenerationException("DDI Splitting produced no file."); } - logger.debug("DDI splitting preprocessing : END"); + LOGGER.debug("DDI splitting preprocessing : END"); return outputFiles; } From d36ae2a68467297f2ef0d45dae14286472c99d15 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 12:56:16 +0100 Subject: [PATCH 14/40] Update MultiModelService.java - process multi-model in parallel --- .../insee/eno/service/MultiModelService.java | 180 ++++++++++++++---- 1 file changed, 147 insertions(+), 33 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index 5d7d12136..647e46e34 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -8,15 +8,22 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.ArrayList; import java.util.List; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; import java.util.zip.ZipOutputStream; import org.apache.commons.io.FileUtils; +import org.apache.commons.io.FilenameUtils; import org.apache.commons.io.IOUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import fr.insee.eno.Constants; +import fr.insee.eno.exception.EnoGenerationException; import fr.insee.eno.parameters.ENOParameters; import fr.insee.eno.params.ValorizatorParameters; import fr.insee.eno.params.ValorizatorParametersImpl; @@ -28,9 +35,6 @@ public class MultiModelService { private static final Logger LOGGER = LoggerFactory.getLogger(MultiModelService.class); - private ParameterizedGenerationService parameterizedGenerationService = new ParameterizedGenerationService(false); - private ValorizatorParameters valorizatorParameters = new ValorizatorParametersImpl(); - private DDISplittingPreprocessor ddiSplitPreprocessor = new DDISplittingPreprocessor(); /** @@ -44,31 +48,47 @@ public class MultiModelService { * @throws Exception */ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception{ - LOGGER.info("MultiModel Generation of questionnaire -- STARTED --"); + LOGGER.info("MultiModel Generation of questionnaire -- STARTED --"); + + byte[] metadataBytes = metadata!=null ? IOUtils.toByteArray(metadata):null; + byte[] specificTreatmentBytes = specificTreatment !=null ? IOUtils.toByteArray(specificTreatment):null; + byte[] mappingBytes = mapping !=null ? IOUtils.toByteArray(mapping):null; String surveyName = params.getParameters()!=null?params.getParameters().getCampagne():"test"; cleanTempFolder(surveyName); - + File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); - + List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); + ExecutorService generationThreadsService = Executors.newFixedThreadPool(ddiFiles.size()); Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); Files.deleteIfExists(outputZipPath); File outputZip = new File(outputZipPath.toString()); - FileOutputStream fileOutputStream = new FileOutputStream(outputZip); - ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); - LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); - - for(File ddiFile : ddiFiles) { - File output = parameterizedGenerationService.generateQuestionnaire(ddiFile, params, metadata, specificTreatment, mapping); - FileArchiver.writeToZipFile(output.getAbsolutePath(), zipOutputStream); - FolderCleaner cleanService = new FolderCleaner(); - cleanService.specialCleaningFiles(folderTemp, output.getParentFile().getName()); + + try { + List> callableThreads = initThreads(ddiFiles,params,metadataBytes,specificTreatmentBytes,mappingBytes); + List> outputsFutureFile = generationThreadsService.invokeAll(callableThreads); + + FileOutputStream fileOutputStream = new FileOutputStream(outputZip); + ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); + LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); + + for(Future future : outputsFutureFile) { + FileArchiver.writeToZipFile(surveyName, future.get().getAbsolutePath(), zipOutputStream); + } + + zipOutputStream.close(); + fileOutputStream.close(); + + } catch (Exception e) { + e.printStackTrace(); + throw new EnoGenerationException("An error was occured during thread execution"); + } finally { + if(generationThreadsService != null) {generationThreadsService.shutdown();} + FolderCleaner cleanerService = new FolderCleaner(); + cleanerService.cleanOneFolderExceptGeneratedFile(folderTemp, outputZip); } - - zipOutputStream.close(); - fileOutputStream.close(); LOGGER.info("MultiModel Generation of questionnaire -- END --"); return outputZip; @@ -88,8 +108,13 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr public File generateQuestionnaire(File inputFile, InputStream params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception { LOGGER.info("MultiModel Generation of questionnaire -- STARTED --"); - byte[] paramsBytes = IOUtils.toByteArray(params); - + ValorizatorParameters valorizatorParameters = new ValorizatorParametersImpl(); + + byte[] paramsBytes = params!=null ? IOUtils.toByteArray(params):null; + byte[] metadataBytes = metadata!=null ? IOUtils.toByteArray(metadata):null; + byte[] specificTreatmentBytes = specificTreatment !=null ? IOUtils.toByteArray(specificTreatment):null; + byte[] mappingBytes = mapping !=null ? IOUtils.toByteArray(mapping):null; + ENOParameters enoParameters = valorizatorParameters.getParameters(new ByteArrayInputStream(paramsBytes)); String surveyName = enoParameters.getParameters()!=null?enoParameters.getParameters().getCampagne():"test"; cleanTempFolder(surveyName); @@ -99,22 +124,34 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); + ExecutorService generationThreadsService = Executors.newFixedThreadPool(ddiFiles.size()); Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); Files.deleteIfExists(outputZipPath); File outputZip = new File(outputZipPath.toString()); - FileOutputStream fileOutputStream = new FileOutputStream(outputZip); - ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); - LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); - - for(File ddiFile : ddiFiles) { - File output = parameterizedGenerationService.generateQuestionnaire(ddiFile, new ByteArrayInputStream(paramsBytes), metadata, specificTreatment, mapping); - FileArchiver.writeToZipFile(output.getAbsolutePath(), zipOutputStream); - FolderCleaner cleanService = new FolderCleaner(); - cleanService.specialCleaningFiles(folderTemp, output.getParentFile().getName()); + + try { + List> callableThreads = initThreads(ddiFiles,paramsBytes,metadataBytes,specificTreatmentBytes,mappingBytes); + List> outputsFutureFile = generationThreadsService.invokeAll(callableThreads); + + FileOutputStream fileOutputStream = new FileOutputStream(outputZip); + ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); + LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); + + for(Future future : outputsFutureFile) { + FileArchiver.writeToZipFile(surveyName, future.get().getAbsolutePath(), zipOutputStream); + } + + zipOutputStream.close(); + fileOutputStream.close(); + + } catch (Exception e) { + e.printStackTrace(); + throw new EnoGenerationException("An error was occured during thread execution"); + } finally { + if(generationThreadsService != null) {generationThreadsService.shutdown();} + FolderCleaner cleanerService = new FolderCleaner(); + cleanerService.cleanOneFolderExceptGeneratedFile(folderTemp, outputZip); } - - zipOutputStream.close(); - fileOutputStream.close(); LOGGER.info("MultiModel Generation of questionnaire -- END --"); return outputZip; @@ -152,7 +189,85 @@ public File generateQuestionnaire(File inputFile, File params, File metadata, Fi return output; } + + /** + * It creates a list of Callable in order to create multiple threads (one per file) + * @param ddiFiles : list of input files + * @param paramsBytes + * @param metadataBytes + * @param specificTreatmentBytes + * @param mappingBytes + * @return list of Callable + * @throws IOException + */ + private List> initThreads(List ddiFiles, byte[] paramsBytes, byte[] metadataBytes, byte[] specificTreatmentBytes, byte[] mappingBytes) throws IOException{ + LOGGER.info("Creation of new threads to transform the models in parallel"); + List> callableThreads = new ArrayList>(); + for(File ddiFile : ddiFiles) { + File movedFile = moveFile(ddiFile); + callableThreads.add( ()-> { + ParameterizedGenerationService parameterizedGenerationServiceThread = new ParameterizedGenerationService(false,getTempSurveyFolder(movedFile)); + File output = parameterizedGenerationServiceThread.generateQuestionnaire( + movedFile, + paramsBytes!=null? new ByteArrayInputStream(paramsBytes):null, + metadataBytes!=null? new ByteArrayInputStream(metadataBytes):null, + specificTreatmentBytes!=null ? new ByteArrayInputStream(specificTreatmentBytes):null, + mappingBytes!=null ? new ByteArrayInputStream(mappingBytes):null); + return output;}); + } + return callableThreads; + + } + /** + * It creates a list of Callable in order to create multiple threads (one per file) + * @param ddiFiles : list of input files + * @param enoParameters + * @param metadataBytes + * @param specificTreatmentBytes + * @param mappingBytes + * @return list of Callable + * @throws IOException + */ + private List> initThreads(List ddiFiles, ENOParameters enoParameters, byte[] metadataBytes, byte[] specificTreatmentBytes, byte[] mappingBytes) throws IOException{ + LOGGER.info("Creation of new threads to transform the models in parallel"); + List> callableThreads = new ArrayList>(); + for(File ddiFile : ddiFiles) { + File movedFile = moveFile(ddiFile); + callableThreads.add( ()-> { + ParameterizedGenerationService parameterizedGenerationServiceThread = new ParameterizedGenerationService(false,getTempSurveyFolder(movedFile)); + File output = parameterizedGenerationServiceThread.generateQuestionnaire( + movedFile, + enoParameters, + metadataBytes!=null? new ByteArrayInputStream(metadataBytes):null, + specificTreatmentBytes!=null ? new ByteArrayInputStream(specificTreatmentBytes):null, + mappingBytes!=null ? new ByteArrayInputStream(mappingBytes):null); + return output;}); + } + return callableThreads; + + } + + /** + * Move a file to a sub-directory whose name is the file's name + * The goal is to prevent parallel treatments from interfering + * @param file to move + * @return the file moved + * @throws IOException + */ + private File moveFile(File file) throws IOException { + Path newDirectoryPath = Paths.get(file.getParent() + "/"+ FilenameUtils.removeExtension(file.getName())); + Files.createDirectories(newDirectoryPath); + Path movedPath = Paths.get(newDirectoryPath.toString()+"/"+file.getName()); + Files.move(file.toPath(), movedPath); + return movedPath.toFile(); + } + + + private String getTempSurveyFolder(File ddifile) { + return ddifile.getParentFile().getParentFile().getName() + "/" + ddifile.getParentFile().getName(); + } + /** * Clean the temp dir if it exists * @@ -160,7 +275,6 @@ public File generateQuestionnaire(File inputFile, File params, File metadata, Fi * */ public void cleanTempFolder(String name) throws IOException { - FolderCleaner cleanService = new FolderCleaner(); if (Constants.TEMP_FOLDER_PATH != null) { File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + name); cleanTempFolder(folderTemp); From b82818532ea6ac8258f61fd42fc550e8091ff791 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 13:21:51 +0100 Subject: [PATCH 15/40] Update FileArchiver.java --- .../java/fr/insee/eno/utils/FileArchiver.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/main/java/fr/insee/eno/utils/FileArchiver.java b/src/main/java/fr/insee/eno/utils/FileArchiver.java index 0ffc2dd2f..ba5c72ebf 100644 --- a/src/main/java/fr/insee/eno/utils/FileArchiver.java +++ b/src/main/java/fr/insee/eno/utils/FileArchiver.java @@ -23,19 +23,20 @@ public class FileArchiver { * @throws FileNotFoundException * @throws IOException */ - public static void writeToZipFile(String filePath, ZipOutputStream zipStream) + public static void writeToZipFile(String surveyName, String filePath, ZipOutputStream zipStream) throws FileNotFoundException, IOException { + LOGGER.info("Writing file : '"+filePath+ "' to archive file."); File file = new File(filePath); - - LOGGER.info("Parent directory :"+file.getParentFile().getName()); - FileInputStream fis = new FileInputStream(file); - ZipEntry zipEntry = new ZipEntry(file.getParentFile().getName()+"/"+file.getName()); + FileInputStream fileIS = new FileInputStream(file); + + ZipEntry zipEntry = new ZipEntry(surveyName + "/" + file.getParentFile().getName()+"/form/"+file.getName()); + zipStream.putNextEntry(zipEntry); - zipStream.write(IOUtils.toByteArray(fis)); + zipStream.write(IOUtils.toByteArray(fileIS)); zipStream.closeEntry(); - fis.close(); + fileIS.close(); } } From f429888270ebacc53df0b561ae250c0054a5cc94 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 13:35:30 +0100 Subject: [PATCH 16/40] Update MultiModelService.java - indentation --- .../fr/insee/eno/service/MultiModelService.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index 647e46e34..cbf65d6bc 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -82,10 +82,13 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr fileOutputStream.close(); } catch (Exception e) { - e.printStackTrace(); + LOGGER.error(e.getMessage()); throw new EnoGenerationException("An error was occured during thread execution"); } finally { - if(generationThreadsService != null) {generationThreadsService.shutdown();} + if(generationThreadsService != null) { + generationThreadsService.shutdown(); + } + LOGGER.info("Cleaning temp files into :"+folderTemp); FolderCleaner cleanerService = new FolderCleaner(); cleanerService.cleanOneFolderExceptGeneratedFile(folderTemp, outputZip); } @@ -145,10 +148,13 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea fileOutputStream.close(); } catch (Exception e) { - e.printStackTrace(); + LOGGER.error(e.getMessage()); throw new EnoGenerationException("An error was occured during thread execution"); } finally { - if(generationThreadsService != null) {generationThreadsService.shutdown();} + if(generationThreadsService != null) { + generationThreadsService.shutdown(); + } + LOGGER.info("Cleaning temp files into :"+folderTemp); FolderCleaner cleanerService = new FolderCleaner(); cleanerService.cleanOneFolderExceptGeneratedFile(folderTemp, outputZip); } From 277fc07459c9318fa8a565bc6038726d708089e6 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 13:40:16 +0100 Subject: [PATCH 17/40] MultiModelService : renaming method --- .../insee/eno/service/MultiModelService.java | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index cbf65d6bc..723ae2295 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -67,8 +67,8 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr File outputZip = new File(outputZipPath.toString()); try { - List> callableThreads = initThreads(ddiFiles,params,metadataBytes,specificTreatmentBytes,mappingBytes); - List> outputsFutureFile = generationThreadsService.invokeAll(callableThreads); + List> generationTasks = initGenerationTasks(ddiFiles,params,metadataBytes,specificTreatmentBytes,mappingBytes); + List> outputsFutureFile = generationThreadsService.invokeAll(generationTasks); FileOutputStream fileOutputStream = new FileOutputStream(outputZip); ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); @@ -133,8 +133,8 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea File outputZip = new File(outputZipPath.toString()); try { - List> callableThreads = initThreads(ddiFiles,paramsBytes,metadataBytes,specificTreatmentBytes,mappingBytes); - List> outputsFutureFile = generationThreadsService.invokeAll(callableThreads); + List> generationTasks = initGenerationTasks(ddiFiles,paramsBytes,metadataBytes,specificTreatmentBytes,mappingBytes); + List> outputsFutureFile = generationThreadsService.invokeAll(generationTasks); FileOutputStream fileOutputStream = new FileOutputStream(outputZip); ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream); @@ -206,12 +206,12 @@ public File generateQuestionnaire(File inputFile, File params, File metadata, Fi * @return list of Callable * @throws IOException */ - private List> initThreads(List ddiFiles, byte[] paramsBytes, byte[] metadataBytes, byte[] specificTreatmentBytes, byte[] mappingBytes) throws IOException{ - LOGGER.info("Creation of new threads to transform the models in parallel"); - List> callableThreads = new ArrayList>(); + private List> initGenerationTasks(List ddiFiles, byte[] paramsBytes, byte[] metadataBytes, byte[] specificTreatmentBytes, byte[] mappingBytes) throws IOException{ + LOGGER.info("Creation of new Tasks (which will be executed on separated threads) to transform the models in parallel"); + List> generationTasks = new ArrayList>(); for(File ddiFile : ddiFiles) { File movedFile = moveFile(ddiFile); - callableThreads.add( ()-> { + generationTasks.add( ()-> { ParameterizedGenerationService parameterizedGenerationServiceThread = new ParameterizedGenerationService(false,getTempSurveyFolder(movedFile)); File output = parameterizedGenerationServiceThread.generateQuestionnaire( movedFile, @@ -221,7 +221,7 @@ private List> initThreads(List ddiFiles, byte[] paramsBytes mappingBytes!=null ? new ByteArrayInputStream(mappingBytes):null); return output;}); } - return callableThreads; + return generationTasks; } @@ -235,12 +235,12 @@ private List> initThreads(List ddiFiles, byte[] paramsBytes * @return list of Callable * @throws IOException */ - private List> initThreads(List ddiFiles, ENOParameters enoParameters, byte[] metadataBytes, byte[] specificTreatmentBytes, byte[] mappingBytes) throws IOException{ - LOGGER.info("Creation of new threads to transform the models in parallel"); - List> callableThreads = new ArrayList>(); + private List> initGenerationTasks(List ddiFiles, ENOParameters enoParameters, byte[] metadataBytes, byte[] specificTreatmentBytes, byte[] mappingBytes) throws IOException{ + LOGGER.info("Creation of new Tasks (which will be executed on separated threads) to transform the models in parallel"); + List> generationTasks = new ArrayList>(); for(File ddiFile : ddiFiles) { File movedFile = moveFile(ddiFile); - callableThreads.add( ()-> { + generationTasks.add( ()-> { ParameterizedGenerationService parameterizedGenerationServiceThread = new ParameterizedGenerationService(false,getTempSurveyFolder(movedFile)); File output = parameterizedGenerationServiceThread.generateQuestionnaire( movedFile, @@ -250,7 +250,7 @@ private List> initThreads(List ddiFiles, ENOParameters enoP mappingBytes!=null ? new ByteArrayInputStream(mappingBytes):null); return output;}); } - return callableThreads; + return generationTasks; } From 67738d1ac435647e952418b453f0818aabd8724a Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Fri, 31 Jan 2020 16:14:36 +0100 Subject: [PATCH 18/40] Update FileArchiver.java --- src/main/java/fr/insee/eno/utils/FileArchiver.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/fr/insee/eno/utils/FileArchiver.java b/src/main/java/fr/insee/eno/utils/FileArchiver.java index ba5c72ebf..15e7292a5 100644 --- a/src/main/java/fr/insee/eno/utils/FileArchiver.java +++ b/src/main/java/fr/insee/eno/utils/FileArchiver.java @@ -15,6 +15,7 @@ public class FileArchiver { private static final Logger LOGGER = LoggerFactory.getLogger(FileArchiver.class); + private static final String ZIP_ENTRY_PATH_FORMAT = "orbeon/fr/%s/%s/form/%s"; /** * Add a file into Zip file. * @@ -31,7 +32,8 @@ public static void writeToZipFile(String surveyName, String filePath, ZipOutputS File file = new File(filePath); FileInputStream fileIS = new FileInputStream(file); - ZipEntry zipEntry = new ZipEntry(surveyName + "/" + file.getParentFile().getName()+"/form/"+file.getName()); + ZipEntry zipEntry = new ZipEntry( + String.format(ZIP_ENTRY_PATH_FORMAT, surveyName, file.getParentFile().getName(),file.getName())); zipStream.putNextEntry(zipEntry); zipStream.write(IOUtils.toByteArray(fileIS)); From f55f563329dc5027c903b876bebac53b4fa07950 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Tue, 4 Feb 2020 11:02:56 +0100 Subject: [PATCH 19/40] FileArchivier : create entry accordring to the outFormat --- .../insee/eno/service/MultiModelService.java | 4 ++-- .../java/fr/insee/eno/utils/FileArchiver.java | 19 +++++++++++++++---- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index 723ae2295..6fbf61f04 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -75,7 +75,7 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); for(Future future : outputsFutureFile) { - FileArchiver.writeToZipFile(surveyName, future.get().getAbsolutePath(), zipOutputStream); + FileArchiver.writeToZipFile(surveyName, future.get().getAbsolutePath(), zipOutputStream, params.getPipeline().getOutFormat()); } zipOutputStream.close(); @@ -141,7 +141,7 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea LOGGER.info("Archive file initalized to :"+outputZip.getAbsolutePath()); for(Future future : outputsFutureFile) { - FileArchiver.writeToZipFile(surveyName, future.get().getAbsolutePath(), zipOutputStream); + FileArchiver.writeToZipFile(surveyName, future.get().getAbsolutePath(), zipOutputStream, enoParameters.getPipeline().getOutFormat()); } zipOutputStream.close(); diff --git a/src/main/java/fr/insee/eno/utils/FileArchiver.java b/src/main/java/fr/insee/eno/utils/FileArchiver.java index 15e7292a5..400e56b3c 100644 --- a/src/main/java/fr/insee/eno/utils/FileArchiver.java +++ b/src/main/java/fr/insee/eno/utils/FileArchiver.java @@ -11,11 +11,14 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import fr.insee.eno.parameters.OutFormat; + public class FileArchiver { private static final Logger LOGGER = LoggerFactory.getLogger(FileArchiver.class); - private static final String ZIP_ENTRY_PATH_FORMAT = "orbeon/fr/%s/%s/form/%s"; + private static final String FR_ZIP_ENTRY_PATH_FORMAT = "orbeon/fr/%s/%s/form/%s"; + private static final String DEFAULT_ZIP_ENTRY_PATH_FORMAT = "%s/%s/%s"; /** * Add a file into Zip file. * @@ -24,7 +27,7 @@ public class FileArchiver { * @throws FileNotFoundException * @throws IOException */ - public static void writeToZipFile(String surveyName, String filePath, ZipOutputStream zipStream) + public static void writeToZipFile(String surveyName, String filePath, ZipOutputStream zipStream, OutFormat outFormat) throws FileNotFoundException, IOException { LOGGER.info("Writing file : '"+filePath+ "' to archive file."); @@ -32,8 +35,16 @@ public static void writeToZipFile(String surveyName, String filePath, ZipOutputS File file = new File(filePath); FileInputStream fileIS = new FileInputStream(file); - ZipEntry zipEntry = new ZipEntry( - String.format(ZIP_ENTRY_PATH_FORMAT, surveyName, file.getParentFile().getName(),file.getName())); + + ZipEntry zipEntry=null; + switch (outFormat) { + case FR: + zipEntry = new ZipEntry(String.format(FR_ZIP_ENTRY_PATH_FORMAT, surveyName, file.getParentFile().getName(),file.getName())); + break; + default: + zipEntry = new ZipEntry(String.format(DEFAULT_ZIP_ENTRY_PATH_FORMAT, surveyName, file.getParentFile().getName(),file.getName())); + break; + } zipStream.putNextEntry(zipEntry); zipStream.write(IOUtils.toByteArray(fileIS)); From 399c36e4d809bfec7134a4cea8570e952d1eb3c7 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Tue, 4 Feb 2020 11:12:52 +0100 Subject: [PATCH 20/40] Update FileArchiver.java --- src/main/java/fr/insee/eno/utils/FileArchiver.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/fr/insee/eno/utils/FileArchiver.java b/src/main/java/fr/insee/eno/utils/FileArchiver.java index 400e56b3c..5e6ec1b06 100644 --- a/src/main/java/fr/insee/eno/utils/FileArchiver.java +++ b/src/main/java/fr/insee/eno/utils/FileArchiver.java @@ -42,7 +42,7 @@ public static void writeToZipFile(String surveyName, String filePath, ZipOutputS zipEntry = new ZipEntry(String.format(FR_ZIP_ENTRY_PATH_FORMAT, surveyName, file.getParentFile().getName(),file.getName())); break; default: - zipEntry = new ZipEntry(String.format(DEFAULT_ZIP_ENTRY_PATH_FORMAT, surveyName, file.getParentFile().getName(),file.getName())); + zipEntry = new ZipEntry(String.format(DEFAULT_ZIP_ENTRY_PATH_FORMAT, surveyName, file.getParentFile().getParentFile().getName(),file.getName())); break; } From 02ef393e8110e51b1e1bb7868d0ec5400563192f Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Tue, 4 Feb 2020 13:15:45 +0100 Subject: [PATCH 21/40] Update MultiModelService.java - number of thread according to number of cpi --- src/main/java/fr/insee/eno/service/MultiModelService.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index 6fbf61f04..f4f2cff61 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -60,8 +60,10 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); + + int nbCpu = Runtime.getRuntime().availableProcessors(); - ExecutorService generationThreadsService = Executors.newFixedThreadPool(ddiFiles.size()); + ExecutorService generationThreadsService = Executors.newFixedThreadPool(Math.min(nbCpu, ddiFiles.size())); Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); Files.deleteIfExists(outputZipPath); File outputZip = new File(outputZipPath.toString()); @@ -126,8 +128,9 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); + int nbCpu = Runtime.getRuntime().availableProcessors(); - ExecutorService generationThreadsService = Executors.newFixedThreadPool(ddiFiles.size()); + ExecutorService generationThreadsService = Executors.newFixedThreadPool(Math.min(nbCpu, ddiFiles.size())); Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); Files.deleteIfExists(outputZipPath); File outputZip = new File(outputZipPath.toString()); From 8792c185417bb5d19759957fa98d66057657f55a Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Tue, 4 Feb 2020 13:48:04 +0100 Subject: [PATCH 22/40] Update MultiModelService.java --- .../insee/eno/service/MultiModelService.java | 32 ++++++++++--------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index f4f2cff61..522d2711b 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -49,7 +49,7 @@ public class MultiModelService { */ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception{ LOGGER.info("MultiModel Generation of questionnaire -- STARTED --"); - + byte[] metadataBytes = metadata!=null ? IOUtils.toByteArray(metadata):null; byte[] specificTreatmentBytes = specificTreatment !=null ? IOUtils.toByteArray(specificTreatment):null; byte[] mappingBytes = mapping !=null ? IOUtils.toByteArray(mapping):null; @@ -60,10 +60,11 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); - - int nbCpu = Runtime.getRuntime().availableProcessors(); - ExecutorService generationThreadsService = Executors.newFixedThreadPool(Math.min(nbCpu, ddiFiles.size())); + // nbThreads = min between number of available CPUs and number of input files + int nbThreads = Math.min(Runtime.getRuntime().availableProcessors(), ddiFiles.size()); + ExecutorService generationThreadsService = Executors.newFixedThreadPool(nbThreads); + Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); Files.deleteIfExists(outputZipPath); File outputZip = new File(outputZipPath.toString()); @@ -112,7 +113,7 @@ public File generateQuestionnaire(File inputFile, ENOParameters params, InputStr */ public File generateQuestionnaire(File inputFile, InputStream params, InputStream metadata, InputStream specificTreatment, InputStream mapping) throws Exception { LOGGER.info("MultiModel Generation of questionnaire -- STARTED --"); - + ValorizatorParameters valorizatorParameters = new ValorizatorParametersImpl(); byte[] paramsBytes = params!=null ? IOUtils.toByteArray(params):null; @@ -123,14 +124,15 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea ENOParameters enoParameters = valorizatorParameters.getParameters(new ByteArrayInputStream(paramsBytes)); String surveyName = enoParameters.getParameters()!=null?enoParameters.getParameters().getCampagne():"test"; cleanTempFolder(surveyName); - + File folderTemp = new File(Constants.TEMP_FOLDER_PATH + "/" + surveyName); + + List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); + // nbThreads = min between number of available CPUs and number of input files + int nbThreads = Math.min(Runtime.getRuntime().availableProcessors(), ddiFiles.size()); + ExecutorService generationThreadsService = Executors.newFixedThreadPool(nbThreads);; - List ddiFiles = ddiSplitPreprocessor.splitDDI(inputFile, surveyName); - int nbCpu = Runtime.getRuntime().availableProcessors(); - - ExecutorService generationThreadsService = Executors.newFixedThreadPool(Math.min(nbCpu, ddiFiles.size())); Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); Files.deleteIfExists(outputZipPath); File outputZip = new File(outputZipPath.toString()); @@ -227,7 +229,7 @@ private List> initGenerationTasks(List ddiFiles, byte[] par return generationTasks; } - + /** * It creates a list of Callable in order to create multiple threads (one per file) * @param ddiFiles : list of input files @@ -256,7 +258,7 @@ private List> initGenerationTasks(List ddiFiles, ENOParamet return generationTasks; } - + /** * Move a file to a sub-directory whose name is the file's name * The goal is to prevent parallel treatments from interfering @@ -271,8 +273,8 @@ private File moveFile(File file) throws IOException { Files.move(file.toPath(), movedPath); return movedPath.toFile(); } - - + + private String getTempSurveyFolder(File ddifile) { return ddifile.getParentFile().getParentFile().getName() + "/" + ddifile.getParentFile().getName(); } @@ -291,7 +293,7 @@ public void cleanTempFolder(String name) throws IOException { LOGGER.debug("Temp Folder is null"); } } - + /** * Clean the temp dir if it exists * From a4751c4adedb34316e3a90a5ed7e8c95a8230c33 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Tue, 4 Feb 2020 17:36:27 +0100 Subject: [PATCH 23/40] Eno : change java version : 1.8 -> 11 --- pom.xml | 24 +++++++++++++------ .../insee/eno/service/MultiModelService.java | 2 +- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 85dbec4bb..b12dcfe15 100644 --- a/pom.xml +++ b/pom.xml @@ -54,8 +54,8 @@ 3.0.1 3.0.0 UTF-8 - 1.8 - 1.8 + 11 + 11 @@ -124,17 +124,27 @@ org.eclipse.persistence org.eclipse.persistence.moxy - 2.6.0 + 2.7.4 org.eclipse.persistence eclipselink - 2.6.0 + 2.7.4 + + + org.eclipse.persistence + javax.persistence + + + org.eclipse.persistence + jakarta.persistence + + javax.xml.bind jaxb-api - 2.3.1 + 2.3.0 @@ -163,7 +173,7 @@ fr.insee.eno.parameters - UTF-8 + UTF-8 src/main/resources/params/schemas/jaxb/bindings.xjb @@ -184,7 +194,7 @@ UTF-8 UTF-8 -Dfile.encoding=UTF-8 - -Djavax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory + -Djavax.xml.bind.JAXBContextFactory=org.eclipse.persistence.jaxb.JAXBContextFactory diff --git a/src/main/java/fr/insee/eno/service/MultiModelService.java b/src/main/java/fr/insee/eno/service/MultiModelService.java index 522d2711b..8cbaaacc7 100644 --- a/src/main/java/fr/insee/eno/service/MultiModelService.java +++ b/src/main/java/fr/insee/eno/service/MultiModelService.java @@ -131,7 +131,7 @@ public File generateQuestionnaire(File inputFile, InputStream params, InputStrea // nbThreads = min between number of available CPUs and number of input files int nbThreads = Math.min(Runtime.getRuntime().availableProcessors(), ddiFiles.size()); - ExecutorService generationThreadsService = Executors.newFixedThreadPool(nbThreads);; + ExecutorService generationThreadsService = Executors.newFixedThreadPool(nbThreads); Path outputZipPath = Paths.get(folderTemp.getAbsolutePath()+"/"+ surveyName+".zip"); Files.deleteIfExists(outputZipPath); From 51fa2a3b8d5182be9e4786c805964055be0edff9 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Tue, 4 Feb 2020 17:41:51 +0100 Subject: [PATCH 24/40] Update pom.xml --- pom.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b12dcfe15..64e9bc2c5 100644 --- a/pom.xml +++ b/pom.xml @@ -154,10 +154,11 @@ org.apache.maven.plugins maven-compiler-plugin - 3.6.1 + 3.8.0 ${compiler.source} ${compiler.target} + ${compiler.target} From 6b163b6c41f415d1afacd01635ee22990fc52439 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Mon, 10 Feb 2020 13:20:49 +0100 Subject: [PATCH 25/40] Update pom.xml --- pom.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/pom.xml b/pom.xml index 64e9bc2c5..44cb5bcb5 100644 --- a/pom.xml +++ b/pom.xml @@ -158,7 +158,6 @@ ${compiler.source} ${compiler.target} - ${compiler.target} From ec98ff8a567f00d1285366901e5171f9ab80d317 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Mon, 10 Feb 2020 13:30:01 +0100 Subject: [PATCH 26/40] Update .travis.yml - jdk 8 -> 11 --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 1bc594664..d30850369 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,6 @@ language: java jdk: - - openjdk8 + - openjdk11 install: - mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V From 801eb5566c233e969291c70bc16d7d288825ca55 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Mon, 10 Feb 2020 13:38:02 +0100 Subject: [PATCH 27/40] Update pom.xml --- pom.xml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/pom.xml b/pom.xml index 44cb5bcb5..069ccb796 100644 --- a/pom.xml +++ b/pom.xml @@ -130,16 +130,6 @@ org.eclipse.persistence eclipselink 2.7.4 - - - org.eclipse.persistence - javax.persistence - - - org.eclipse.persistence - jakarta.persistence - - javax.xml.bind From b46f7b3063ea5ff0fdde3d367933938b7e64be9c Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Wed, 26 Feb 2020 14:55:44 +0100 Subject: [PATCH 28/40] Update pom.xml --- pom.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/pom.xml b/pom.xml index c955e3dfd..2c4580e5e 100644 --- a/pom.xml +++ b/pom.xml @@ -104,8 +104,6 @@ slf4j-api ${slf4j.version} - - From fcd046bc2e2b6317cb47b958c75e634c8ee9e258 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Wed, 26 Feb 2020 15:15:34 +0100 Subject: [PATCH 29/40] Update pom.xml --- pom.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2c4580e5e..e31f2ae76 100644 --- a/pom.xml +++ b/pom.xml @@ -53,7 +53,7 @@ 2.2 2.7.1 1.7.25 - 2.7.4 + 2.6.0 2.3.1 3.5 @@ -136,6 +136,7 @@ org.eclipse.persistence org.eclipse.persistence.moxy ${eclipse.version} + runtime org.eclipse.persistence From 66a2ac992cf2b5a6c6b1468d503498a7f461fb2f Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 16:43:33 +0100 Subject: [PATCH 30/40] Create main.yml --- .github/workflows/main.yml | 39 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 000000000..0a524f326 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,39 @@ +name: Java CI + +on: + push: + branches: + - 'test-actions' + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: 11 + - name: Build with Maven + run: mvn -B package --file pom.xml + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.ref }} + release_name: Release ${{ github.ref }} + draft: false + prerelease: false + - name: Upload Release Asset + id: upload-release-asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps + asset_path: target/eno-core-2.0.1.jar + asset_name: eno-core-2.0.1.jar + asset_content_type: application/java-archive From c4d37037f776910d669eb0f329adc6943b114e78 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 16:49:47 +0100 Subject: [PATCH 31/40] Update main.yml --- .github/workflows/main.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0a524f326..e5c993a34 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -16,7 +16,9 @@ jobs: with: java-version: 11 - name: Build with Maven - run: mvn -B package --file pom.xml + run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V --file pom.xml + - name: Test with Maven + run: mvn test -B --file pom.xml - name: Create Release id: create_release uses: actions/create-release@v1 From 1b2ef56be28cbc50a5756ef4c3c4a3783eec5daa Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 17:12:08 +0100 Subject: [PATCH 32/40] Update main.yml --- .github/workflows/main.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e5c993a34..62de6a296 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: Java CI +name: Upload Release Asset on: push: @@ -34,8 +34,9 @@ jobs: uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ENO_VERSION: ${{mvn help:evaluate -Dexpression=project.version -q -DforceStdout --file pom.xml}} with: upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps - asset_path: target/eno-core-2.0.1.jar - asset_name: eno-core-2.0.1.jar + asset_path: target/eno-core-$ENO_VERSION.jar + asset_name: eno-core-$ENO_VERSION.jar asset_content_type: application/java-archive From d89313ddc027b8485bde916e366ca7089bfa041c Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 17:24:03 +0100 Subject: [PATCH 33/40] Update main.yml --- .github/workflows/main.yml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 62de6a296..ce5cf2cc1 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -16,9 +16,13 @@ jobs: with: java-version: 11 - name: Build with Maven - run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V --file pom.xml + run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Djar.finalName="eno-core" -B -V --file pom.xml - name: Test with Maven run: mvn test -B --file pom.xml + - name: Deploy GitHub package + run: mvn deploy -Dregistry=https://maven.pkg.github.com/laurentC35 -Dtoken=$GITHUB_TOKEN + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Create Release id: create_release uses: actions/create-release@v1 @@ -34,9 +38,8 @@ jobs: uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - ENO_VERSION: ${{mvn help:evaluate -Dexpression=project.version -q -DforceStdout --file pom.xml}} with: upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps - asset_path: target/eno-core-$ENO_VERSION.jar - asset_name: eno-core-$ENO_VERSION.jar + asset_path: target/eno-core.jar + asset_name: eno-core-${{ github.ref }}.jar asset_content_type: application/java-archive From 7646f4b8db2efa7096db1e2f77b83f451ff21f11 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 17:50:14 +0100 Subject: [PATCH 34/40] Update main.yml --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ce5cf2cc1..1696290a6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -20,7 +20,7 @@ jobs: - name: Test with Maven run: mvn test -B --file pom.xml - name: Deploy GitHub package - run: mvn deploy -Dregistry=https://maven.pkg.github.com/laurentC35 -Dtoken=$GITHUB_TOKEN + run: mvn deploy -DaltDeploymentRepository=repository::default::https://maven.pkg.github.com/laurentC35 -Dtoken=$GITHUB_TOKEN env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Create Release From c7ce77ef70158c9612891c9a4689ae0f480421ce Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 18:00:52 +0100 Subject: [PATCH 35/40] Update and rename main.yml to build-release.yml --- .github/workflows/{main.yml => build-release.yml} | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) rename .github/workflows/{main.yml => build-release.yml} (83%) diff --git a/.github/workflows/main.yml b/.github/workflows/build-release.yml similarity index 83% rename from .github/workflows/main.yml rename to .github/workflows/build-release.yml index 1696290a6..4a882dcec 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/build-release.yml @@ -2,8 +2,8 @@ name: Upload Release Asset on: push: - branches: - - 'test-actions' + tags: + - 'v*' jobs: build: @@ -19,10 +19,6 @@ jobs: run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Djar.finalName="eno-core" -B -V --file pom.xml - name: Test with Maven run: mvn test -B --file pom.xml - - name: Deploy GitHub package - run: mvn deploy -DaltDeploymentRepository=repository::default::https://maven.pkg.github.com/laurentC35 -Dtoken=$GITHUB_TOKEN - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Create Release id: create_release uses: actions/create-release@v1 From 2cacce49fed567f0fa6193b04bfc3703970acbc6 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 18:21:55 +0100 Subject: [PATCH 36/40] Update build-release.yml --- .github/workflows/build-release.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 4a882dcec..ffe506a57 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -15,6 +15,9 @@ jobs: uses: actions/setup-java@v1 with: java-version: 11 + - name: Get maven version + id: get_eno_version + run: mvn help:evaluate -Dexpression=project.version -q -DforceStdout --file pom.xml - name: Build with Maven run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Djar.finalName="eno-core" -B -V --file pom.xml - name: Test with Maven @@ -37,5 +40,5 @@ jobs: with: upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps asset_path: target/eno-core.jar - asset_name: eno-core-${{ github.ref }}.jar + asset_name: eno-core-${{steps.get_eno_version}}.jar asset_content_type: application/java-archive From b5dc3ea3e2f586c8ec74016e55270adc62ce4b39 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin <38245508+laurentC35@users.noreply.github.com> Date: Wed, 26 Feb 2020 18:35:20 +0100 Subject: [PATCH 37/40] test var eno --- .github/workflows/build-release.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index ffe506a57..441c20b55 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -10,6 +10,10 @@ jobs: runs-on: ubuntu-latest steps: + - name: Eno name + id: get_name + env: + ENO_NAME: "eno-core" - uses: actions/checkout@v2 - name: Set up JDK 11 uses: actions/setup-java@v1 @@ -19,7 +23,7 @@ jobs: id: get_eno_version run: mvn help:evaluate -Dexpression=project.version -q -DforceStdout --file pom.xml - name: Build with Maven - run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Djar.finalName="eno-core" -B -V --file pom.xml + run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Djar.finalName="${{steps.get_name.env.ENO_NAME}}" -B -V --file pom.xml - name: Test with Maven run: mvn test -B --file pom.xml - name: Create Release @@ -39,6 +43,6 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps - asset_path: target/eno-core.jar - asset_name: eno-core-${{steps.get_eno_version}}.jar + asset_path: target/${{steps.get_name.env.ENO_NAME}}.jar + asset_name: ${{steps.get_name.env.ENO_NAME}}.jar asset_content_type: application/java-archive From d578fb8971babf037fd8fe1633f65bf59e6fe1c8 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Wed, 26 Feb 2020 18:46:32 +0100 Subject: [PATCH 38/40] Update build-release.yml --- .github/workflows/build-release.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 441c20b55..01e3ea9a2 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -2,8 +2,8 @@ name: Upload Release Asset on: push: - tags: - - 'v*' + branches: + - 'test-actions' jobs: build: @@ -12,6 +12,7 @@ jobs: steps: - name: Eno name id: get_name + run: echo ENO_NAME $ENO_NAME env: ENO_NAME: "eno-core" - uses: actions/checkout@v2 From 4ae52e57d8eacdecaa6fe7075f35e318305efea8 Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Wed, 26 Feb 2020 18:55:02 +0100 Subject: [PATCH 39/40] Update build-release.yml --- .github/workflows/build-release.yml | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 01e3ea9a2..1dfc578ce 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -10,21 +10,13 @@ jobs: runs-on: ubuntu-latest steps: - - name: Eno name - id: get_name - run: echo ENO_NAME $ENO_NAME - env: - ENO_NAME: "eno-core" - uses: actions/checkout@v2 - name: Set up JDK 11 uses: actions/setup-java@v1 with: java-version: 11 - - name: Get maven version - id: get_eno_version - run: mvn help:evaluate -Dexpression=project.version -q -DforceStdout --file pom.xml - name: Build with Maven - run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Djar.finalName="${{steps.get_name.env.ENO_NAME}}" -B -V --file pom.xml + run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -Djar.finalName="eno-core" -B -V --file pom.xml - name: Test with Maven run: mvn test -B --file pom.xml - name: Create Release @@ -44,6 +36,6 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps - asset_path: target/${{steps.get_name.env.ENO_NAME}}.jar - asset_name: ${{steps.get_name.env.ENO_NAME}}.jar + asset_path: target/eno-core.jar + asset_name: eno-core.jar asset_content_type: application/java-archive From 13805b3326ac973c2bfa1c08729378bd330a337d Mon Sep 17 00:00:00 2001 From: Laurent Caouissin Date: Wed, 26 Feb 2020 18:55:20 +0100 Subject: [PATCH 40/40] Update build-release.yml --- .github/workflows/build-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 1dfc578ce..b18e4656a 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -2,8 +2,8 @@ name: Upload Release Asset on: push: - branches: - - 'test-actions' + tags: + - 'v*' jobs: build: