Author: tchemit Date: 2014-01-23 13:07:05 +0100 (Thu, 23 Jan 2014) New Revision: 1525 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1525 Log: refs #4138: [SPECS] Revoir le mapping DB/?\195?\137crans Modified: trunk/src/site/rst/mapping.rst Modified: trunk/src/site/rst/mapping.rst =================================================================== --- trunk/src/site/rst/mapping.rst 2014-01-23 11:39:57 UTC (rev 1524) +++ trunk/src/site/rst/mapping.rst 2014-01-23 12:07:05 UTC (rev 1525) @@ -29,594 +29,6 @@ Présentation ~~~~~~~~~~~~ -Ce document décrit comment sont stocker les informations visibles dans les écrans. +Cette partie de la documentation est désormais dans `l'aide en ligne`_. -Série de campagne -~~~~~~~~~~~~~~~~~ - -Nom - Program.name (PROGRAM.NAME) - -Zone - Program.locations (PROGRAM2LOCATION.LOCATION_FK) - -Description - Program.description (PROGRAM.DESCRIPTION) - -Campagne -~~~~~~~~ - -Série - ScientificCruise.program (SCIENTIFIC_CRUISE.PROGRAM_FK) - -Année - En lecture : year(ScientificCruise.departureDateTime) (SCIENTIFIC_CRUISE.DEPARTURE_DATE_TIME) - En écriture : pas de stockage (car doit logiquement être compatible avec ScientificCruise.departureDateTime) - -Série partielle - ScientificCruise.fishingTrip.surveyMeasurement (SURVEY_MEASUREMENT.ALPHA_NUMERICAL_VALUE, avec PMFM_FK=<PmfmId.SURVEY_PART>) - -Name - ScientificCruise.name (SCIENTIFIC_CRUISE.NAME) - -Nombre de poches - En lecture : récupération de la plus grande valeur dans ScientificCruise.fishingTrip.gearPhysicalFeatures.gearPhysicalMeasurement.numericalvalue (GEAR_PHYSICAL_MEASURMENT.NUMERICAL_VALUE avec PMFM_FK=<PMFM_ID_MULTIRIG_NUMBER>) - En écriture : valeur dupliquée pour chaque engin (voir "Engin(s)" ci-dessous) dans ScientificCruise.fishingTrip.gearPhysicalFeatures.gearPhysicalMeasurement.numericalvalue (GEAR_PHYSICAL_MEASURMENT.NUMERICAL_VALUE avec PMFM_FK=<PMFM_ID_MULTIRIG_NUMBER>) - -Port de départ - ScientificCruise.fishingTrip.departureLocation (FISHING_TRIP.DEPARTURE_LOCATION_FK) avec le lien avec la campagne via SCIENTIFIC_CRUISE_FK) - -Port d'arrivée - ScientificCruise.fishingTrip.returnLocation (FISHING_TRIP.RETURN_LOCATION_FK) avec le lien avec la campagne via SCIENTIFIC_CRUISE_FK) - -Date de début - ScientificCruise.departureDateTime (SCIENTIFIC_CRUISE.DEPARTURE_DATE_TIME) - -Date de fin - ScientificCruise.returnDateTime (SCIENTIFIC_CRUISE.RETURN_DATE_TIME) - -Navire - ScientificCruise.vessel (SCIENTIFIC_CRUISE.VESSEL_FK) - -Engin(s) - ScientificCruise.fishingTrip.gearPhysicalFeatures.gear (GEAR_PHYSICAL_FEATURES.GEAR_FK avec RANK_ORDER=<n° d'ordre dans la liste>) - -Chef(s) de mission - La première personne de la liste est stockée sous ScientificCruise.manager (SCIENTIFIC_CRUISE.MANAGER_PERSON_FK) - Pour les autres personnes, ScientificCruise.fishingTrip.vesselPersonFeatures avec un VesselPersonRole.id=<responsable_de_campagne> - -Responsable(s) de salle de tri - ScientificCruise.fishingTrip.vesselPersonFeatures avec un VesselPersonRole.id=<responsable_salle_de_tri> - -Commentaire - ScientificCruise.comments (SCIENTIFIC_CRUISE.COMMENTS) - -Protocole -~~~~~~~~~ - -Informations générales > Nom - TuttiProtocol.name (persisté dans le fichier) - -Informations générales > Commentaire - TuttiProtocol.comment (persisté dans le fichier) - -Caractéristiques - On récupère la liste de tous les pmfm que l'on répartit dans les différents - onglets. Chaque pmfm ne peut être sélectionné que dans une seule liste. - -Espèces - -Espèces > Espèce - La liste des espèces référent non encore utilisés. - Voir `détail des requêtes`_. - Note: cette liste est partagée sur les deux onglets espèces - benthos). - -Espèces > Tableau - Chaque ligne du tableau est stockée sous la forme d'un SpeciesProtocol : *TuttiProtocol.species*. - -Espèces > Tableau > Espèce - -Espèces > Tableau > Code - -Espèces > Tableau > Classe de Taille - -Espèces > Tableau > Pesée - -Espèces > Tableau > Dénombrement - -Espèces > Tableau > Catégorie Tri - -Espèces > Tableau > Sexe - -Espèces > Tableau > Maturité - -Espèces > Tableau > Age - -Espèces > Tableau > Prélèvement de pièces calcifiées - -Benthos - -Benthos > Espèce - La liste des espèces référents non encore utilisés. - Voir `détail des requêtes`_. - Note: cette liste est partagée sur les deux onglets espèces - benthos). - -Benthos > Tableau - Chaque ligne du tableau est stockée sous la forme d'un SpeciesProtocol: *TuttiProtocol.benthos*. - -Benthos > Tableau > Espèce - -Benthos > Tableau > Code - -Benthos > Tableau > Classe de Taille - -Benthos > Tableau > Pesée - -Benthos > Tableau > Dénombrement - -Benthos > Tableau > Catégorie Tri - -Benthos > Tableau > Sexe - -Benthos > Tableau > Maturité - -Benthos > Tableau > Age - -Benthos > Tableau > Prélèvement de pièces calcifiées - -Trait -~~~~~ - -Code Station - Operation.vesselUseFeatures.vesselUseMeasurement (VESSEL_USE_MEASUREMENT.ALPHANUMERICAL_VALUE avec PMFM_FK=<PmfmId.STATION_NUMBER>) - -Numéro de trait - Operation.name (OPERATION.NAME) : ajouté à la fin du "name", derrière le code de l'engin, pour rester compatible avec le format des données historiques. - -Numéro de poche - Liste des poches observées - Operation.gearUseFeatures.gearUseMeasurement (GEAR_USE_MEASUREMENT.ALPHANUMERICAL_VALUE avec PMFM_FK=<PmfmId.MULTIRIG_AGGREGATION>) - -Strate - Operation.gearUseFeatures.fishingArea.regulationLocation (FISHING_AREA2REG_LOCATION.LOCATION_FK associé au FISHING_AREA de l'opération) - En lecture : sélection en tant que localité à partir du locationLevel (LOCATION.LOCATION_LEVEL_FK=<LocationLevelId.STRATA>) - -Sous-strate - Operation.gearUseFeatures.fishingArea.regulationLocation (FISHING_AREA2REG_LOCATION.LOCATION_FK associé au FISHING_AREA de l'opération) - En lecture : sélection en tant que localité à partir du locationLevel (LOCATION.LOCATION_LEVEL_FK=<LocationLevelId.SUB_STRATA>) - -Localité - operation.gearUseFeatures.fishingArea.regulationLocation (FISHING_AREA2REG_LOCATION.LOCATION_FK associé au FISHING_AREA de l'opération) - En lecture : sélection en tant que localité à partir du locationLevel (LOCATION.LOCATION_LEVEL_FK=<LocationLevelId.LOCALITE>) - -Début de traine > Latitude, Longitude - Operation.vesselPosition (VESSEL_POSITION.LATITUDE et VESSEL_POSITION.LONGITUDE), avec startDateTime = "Début de traine > Date et heure" - -Début de traine > Date et heure - Operation.startDateTime et Operation.fishingStartDateTime (OPERATION.START_DATE_TIME et OPERATION.FISHING_START_DATE_TIME) - -Fin de traine > Latitude, Longitude - Operation.vesselPosition (VESSEL_POSITION.LATITUDE et VESSEL_POSITION.LONGITUDE), avec startDateTime = "Fin de traine > Date et heure" - -Fin de traine > Date et heure - Operation.endDateTime et Operation.fishingEndDateTime (OPERATION.END_DATE_TIME et OPERATION.FISHING_END_DATE_TIME) - -Trait rectiligne - Operation.vesselUseFeatures.vesselUseMeasurement (VESSEL_USE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.RECTILINEAR_OPERATION>) - -Distance chalutée - Operation.vesselUseFeatures.vesselUseMeasurement (VESSEL_USE_MEASUREMENT.NUMERICAL_VALUE avec PMFM_FK=<PmfmId.TRAWL_DISTANCE>) - -Trait valide ou invalide - Operation.vesselUseFeatures.vesselUseMeasurement (VESSEL_USE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.HAUL_VALID>) - -Saisisseur(s) - Operation.vesselPersonFeatures avec un VesselPersonRole.id=<responsable_de_campagne> - -Navire - (depuis version 1.2) - Identique à celui de la campagne : Operation.vessel (OPERATION.VESSEL_FK) - (Obsolète) : TODO supprimer le code qui fait cette gestion - Si le navire est identique à celui de la campagne : Operation.vessel (OPERATION.VESSEL_FK) - Sinon : Operation.operationVesselAssociation (OPERATION_VESSEL_ASSOCIATION.VESSEL_FK avec IS_CATCH_ON_OPERATION_VESSEL=0). - Operation.vessel est alors rempli avec le premier navire de la liste de la campagne, pour être compatible avec Allegro (on doit toujours avoir : SCIENTIFIC_CRUISE.VESSEL_FK = OPERATION_VESSEL_FK). - -Engin - Operation.gearPhysicialFeatures (OPERATION.GEAR_PHYSCIAL_FEATURES_FK) : lien vers un engin déjà déclaré au niveau de la campagne. - Le code de l'engin est également dupliqué au début de Operation.name (OPERATION.NAME), devant le numéro du trait, pour rester compatible avec le format des données historiques. - -Commentaire - Operation.comments (OPERATION.COMMENTS) - -Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='OPERATION' et OBJECT_ID=<ID du trait>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Trait > Mise en oeuvre de l'engin -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Valeur - Operation.gearUseFeatures.gearUseMeasurement (GEAR_USE_MEASUREMENT.xxx - en fonction du type de PSFM : NUMERICAL_VALUE, ALPHANUMERICAL_VALUE ou QUALITATIVE_VALUE_FK) - -Trait > Hydrologie et paramètres environnementaux -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Valeur - Operation.gearUseFeatures.vesselUseMeasurement (GEAR_USE_MEASUREMENT.xxx - en fonction du type de PSFM : NUMERICAL_VALUE, ALPHANUMERICAL_VALUE ou QUALITATIVE_VALUE_FK) - **WARNING** : En v2 (version à confirmer), informations dispatcher dans différent onglet, en fonction du PSFM trouvé dans le protocole - -Capture > Résumé -~~~~~~~~~~~~~~~~ - -Poids TOTAL - Lot "Capture" (BATCH avec IS_CATCH_BATCH=1) - Stocké uniquement si non calculé - CatchBatch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Poids total VRAC - Lot "Capture > Vrac" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Poids total HORS VRAC - Lot "Capture > Hors Vrac" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Poids total NON TRIE - Lot "Capture > Non trié" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Espèce > Poids TOTAL - Somme des poids des lots "Capture > xxx > Espèce" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Espèce > Poids total VRAC - Lot "Capture > Vrac > Espèce" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Espèce > Poids total VRAC trié - Calculé par tutti ? utile seulement si Thalassa ? - -Espèce > Poids total HORS VRAC TRIE - Lot "Capture > Hors Vrac > Espèce" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Benthos > Poids TOTAL - Somme des poids des lots "Capture > xxx > Benthos" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Benthos > Poids total VRAC - Lot "Capture > Vrac > Benthos" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Benthos > Poids total VRAC trié - Calculé par tutti ? utile seulement si Thalassa ? - -Benthos > Poids total HORS VRAC TRIE - Lot "Capture > Hors Vrac > Benthos" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='CATCH_BATCH' et OBJECT_ID=<ID du lot de la capture>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Capture > Espèces -~~~~~~~~~~~~~~~~~ - -Espèce > Poids total VRAC - Lot "Capture > Vrac > Espèce" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Poids inerte trié - Lot "Capture > Vrac > Espèce > [TAXON_INERT]" - Batch.referenceTaxon = [TAXON_INERT] (BATCH.REFERENCE_TAXON_FK=<ReferenceTaxonId.INERT>) - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - **WARNING** : le taxon référent "Inerte" n'existe pas encore, il faut le créé (action Ifremer/J.Martin ?) - -Poids vivant non détaillé trié - Lot "Capture > Vrac > Espèce > Biota" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='CATCH_BATCH' et OBJECT_ID=<ID du lot VRAC > ESPECES>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Tableau - Chaque ligne du tableau est stockée sous la forme d'un lot (Batch) positionné - soit sous le lot "Capture > Vrac > Espèce" - soit sous "Capture > Hors Vrac > Espèce" - -Tableau > Espèce - stockage de l'espèce uniquement pour les lot parent - Batch.referenceTaxon (BATCH.REFERENCE_TAXON_FK) - -Tableau > V/HV - Vrac ou Hors Vrac : Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SORTED_UNSORTED>) - Poids : Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Tableau > Class. Tri - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SIZE_CATEGORY>) - -Tableau > Sexe - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SEX>) - -Tableau > Maturité - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.MATURITY>) - -Tableau > Age - Batch.sortingMeasurement.numericalValue (SORTING_MEASUREMENT.NUMERICAL_VALUE avec PMFM_FK=<PmfmId.AGE>) - -Tableau > Poids sous-échantillonné - -:: - - Si vide Batch.samplingRatio = 1 - Sinon - Batch.samplingRatioText (BATCH.SAMPLING_RATIO_TEXT) concaténé à partir des chaines : "<Poids sous-échantillonné>" + "/" + "<Poids V/HV>" - Batch.samplingRatio (BATCH.SAMPLING_RATIO) calculé par le division : <Poids sous-échantillonné> / <Poids V/HV> - -Pour la lecture : on parse samplingRatioText pour récupérer le poids sous-échantillonné. si absent on le calculé à partir de samplingRatio (moins précis car perte possible de précision) - -Tableau > Nombre - Calculé à partir de la somme du nombre d'individus des lots fils (BATCH.INDIVIDUAL_COUNT avec PARENT_BATCH_FK=<ID du lot de la ligne du tableau>) - (voir ci-dessous "Mensuration > Tableau") - -Tableau > Commentaire - Batch.comments - -Tableau > Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='SAMPLE' et OBJECT_ID=<ID du lot de la ligne du tableau>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif ?) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Mensuration > Type de mesure - Dupliqué pour chaque lot de mensuration créé (un lot pour chaque taille saisie) - Batch.sortingMeasurement.pmfm (SORTING_MEASUREMENT.PMFM_FK) - -Mensuration > Pas de la classe de taille - **WARNING** : Non stocké, devrait dépendre de PSFM.precision ? - Peut-etre peut-on le calculer par analyse des mensurations saisies ? (et si aucune mesure prendre la précision du PSFM) - -Mensuration > Tableau - Chaque ligne du tableau de mensuration est stocké sous la forme d'un lot - relié au lot correspondant à la ligne parent du tableau des espèces. (BATCH avec PARENT_BATCH_FK=<ID du lot parent dans le tableau des espèces>) - -Mensuration > Tableau > Classe de taille - Batch.sortingMeasurement.numericalValue (SORTING_MEASUREMENT.NUMERICAL_VALUE avec PMFM_FK=<ID correspondant au "Type de mesure">) - -Mensuration > Tableau > Nombre - Batch.individualCount (BATCH.INDIVIDUAL_COUNT) - -Mensuration > Tableau > Poids observé - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1) - -Capture > Benthos -~~~~~~~~~~~~~~~~~ - -Benthos > Poids total VRAC - Lot "Capture > Vrac > Benthos" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Poids inerte trié - Lot "Capture > Vrac > Benthos > [TAXON_INERT]" - Batch.referenceTaxon = [TAXON_INERT] (BATCH.REFERENCE_TAXON_FK=<ReferenceTaxonId.INERT>) - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - **WARNING** : le taxon référent "Inerte" n'existe pas encore, il faut le créé (action Ifremer/J.Martin ?) - -Poids vivant non détaillé trié - Lot "Capture > Vrac > Benthos > Biota" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='CATCH_BATCH' et OBJECT_ID=<ID du lot VRAC > BENTHOS>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Tableau - Chaque ligne du tableau est stockée sous la forme d'un lot (Batch) positionné - soit sous le lot "Capture > Vrac > Benthos" - soit sous "Capture > Hors Vrac > Benthos" - -Tableau > Benthos - stockage de l'espèce uniquement pour les lot parent - Batch.referenceTaxon (BATCH.REFERENCE_TAXON_FK) - -Tableau > V/HV - Vrac ou Hors Vrac : Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SORTED_UNSORTED>) - Poids : Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Tableau > Class. Tri - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SIZE_CATEGORY>) - -Tableau > Sexe - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SEX>) - -Tableau > Maturité - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.MATURITY>) - -Tableau > Age - Batch.sortingMeasurement.numericalValue (SORTING_MEASUREMENT.NUMERICAL_VALUE avec PMFM_FK=<PmfmId.AGE>) - -Tableau > Poids sous-échantillonné - -:: - - Si vide Batch.samplingRatio = 1 - Sinon : - Batch.samplingRatioText (BATCH.SAMPLING_RATIO_TEXT) concaténé à partir des chaines : "<Poids sous-échantillonné>" + "/" + "<Poids V/HV>" - Batch.samplingRatio (BATCH.SAMPLING_RATIO) calculé par le division : <Poids sous-échantillonné> / <Poids V/HV> - -Pour la lecture : on parse samplingRatioText pour récupérer le poids sous-échantillonné. si absent on le calculé à partir de samplingRatio (moins précis car perte possible de précision) - -Tableau > Nombre - Calculé à partir de la somme du nombre d'individus des lots fils (BATCH.INDIVIDUAL_COUNT avec PARENT_BATCH_FK=<ID du lot de la ligne du tableau>) - (voir ci-dessous "Mensuration > Tableau") - -Tableau > Commentaire - Batch.comments - -Tableau > Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='SAMPLE' et OBJECT_ID=<ID du lot de la ligne du tableau>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Mensuration > Type de mesure - Dupliqué pour chaque lot de mensuration créé (un lot pour chaque taille saisie) - Batch.sortingMeasurement.pmfm (SORTING_MEASUREMENT.PMFM_FK) - -Mensuration > Pas de la classe de taille - **WARNING** : Non stocké, devrait dépendre de PSFM.precision ? - Peut-etre peut-on le calculer par analyse des mensurations saisies ? (et si aucune mesure prendre la précision du PSFM) - -Mensuration > Tableau - Chaque ligne du tableau de mensuration est stocké sous la forme d'un lot - relié au lot correspondant à la ligne parent du tableau des espèces. (BATCH avec PARENT_BATCH_FK=<ID du lot parent dans le tableau des espèces>) - -Mensuration > Tableau > Classe de taille - Batch.sortingMeasurement.numericalValue (SORTING_MEASUREMENT.NUMERICAL_VALUE avec PMFM_FK=<ID correspondant au "Type de mesure">) - -Mensuration > Tableau > Nombre - Batch.individualCount (BATCH.INDIVIDUAL_COUNT) - -Mensuration > Tableau > Poids observé - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1) - -Capture > Macro déchets -~~~~~~~~~~~~~~~~~~~~~~~ - -Macro-dechets > Poids total - Lot "Capture > Hors Vrac > Macro déchets" - Batch.quantificationMeasurement.numericalValue (QUANTIFICATION_MEASUREMENT.NUMERICAL_VALUE avec IS_REFERENT=1 et PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='CATCH_BATCH' et OBJECT_ID=<ID du lot HORS VRAC > Macro déchets>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Tableau - Chaque ligne du tableau est stockée sous la forme d'un lot (Batch) positionné - soit sous le lot "Capture > Vrac > Benthos" - soit sous "Capture > Hors Vrac > Benthos" - -Tableau > Catégorie - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.MARINE_LITTER_TYPE>) - -Tableau > Catégorie de taille - Batch.sortingMeasurement.qualitativeValue (SORTING_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.MARINE_LITTER_SIZE_CATEGORY>) - -Tableau > Nombre - Batch.quantificationMeasurement.qualitativeValue (QUANTIFICATION_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SIZE_CATEGORY>) - -Tableau > Poids - Batch.individualCount - -Tableau > Commentaire - Batch.comments - -Tableau > Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='SAMPLE' et OBJECT_ID=<ID du lot de la ligne du tableau>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Capture > Captures accidentelles -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Utilisation table *Sample* et *SampleMeasurement* - -Tableau - Chaque ligne du tableau est stockée sous la forme d'un prélèvement (Sample). - -Tableau > Espèce - Sample.referenceTaxon - -Tableau > Sexe - Sample.sampleMeasurements.qualitativeValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SEX>) - -Tableau > Poids observé (kg) - Sample.sampleMeasurements.numericalValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Tableau > Taille - Sample.sampleMeasurements.numericalValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.>) - -Tableau > Classe de taille - Sample.sampleMeasurements.qualitativeValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.>) - -Tableau > Mort ou vivant - Sample.sampleMeasurements.qualitativeValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.>) - -Tableau > Autres caractéristiques - Tableau avec une entrée dans Sample.sampleMeasurements pour le pmfm choisi - -Tableau > Commentaire - Batch.comments - -Tableau > Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='SAMPLE' et OBJECT_ID=<ID du lot de la ligne du tableau>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -Capture > Données individuelles -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Utilisation table *Sample* - -Utilisation table *Sample* - -Tableau - Chaque ligne du tableau est stockée sous la forme d'un prélèvement (Sample). - -Tableau > Espèce - Sample.referenceTaxon - -Tableau > Poids (g) - Sample.sampleMeasurements.numericalValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.WEIGHT_OBSERVED>) - -Tableau > Taille - Sample.sampleMeasurements.numericalValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SEX>) - -Tableau > Classe de taille - Sample.sampleMeasurements.qualitativeValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=(celui choisi)) - -Tableau > Mort ou vivant - Sample.sampleMeasurements.qualitativeValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.DEAD_OR_ALIVE>) - -Tableau > Autres caractéristiques - Tableau avec une entrée dans Sample.sampleMeasurements pour le pmfm choisi - -Tableau > Code prélèvement pièce calcifiée - Sample.sampleMeasurements.alphanumericalValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.OTOLITHE_ID>) - -Tableau > Code prélèvement autre - Sample.sampleMeasurements.alphanumericalValue (SAMPLE_MEASUREMENT.QUALITATIVE_VALUE_FK avec PMFM_FK=<PmfmId.SAMPLE_ID>) - -Tableau > Commentaire - Batch.comments - -Tableau > Pièces Jointes - Chaque pièce jointes est stockée dans MeasurementFile - (MEASUREMENT_FILE avec PMFM_FK=null, OBJECT_TYPE_FK='SAMPLE' et OBJECT_ID=<ID du lot de la ligne du tableau>) - MeasurementFile.path : chemin du fichier (copier dans un répertoire, puis stocké en relatif) - MeasurementFile.name : nom - MeasurementFile.comments : commentaire - -.. _détail des requêtes: referential.html \ No newline at end of file +.. _l'aide en ligne: ./help/fr/dbMapping.html \ No newline at end of file
participants (1)
-
tchemit@users.forge.codelutin.com