diff --git a/locale/en_US/LC_MESSAGES/django.mo b/locale/en_US/LC_MESSAGES/django.mo
index 323bb6532a..a3d4903941 100644
Binary files a/locale/en_US/LC_MESSAGES/django.mo and b/locale/en_US/LC_MESSAGES/django.mo differ
diff --git a/locale/en_US/LC_MESSAGES/django.po b/locale/en_US/LC_MESSAGES/django.po
index af6c995c44..4ff5dd9dab 100644
--- a/locale/en_US/LC_MESSAGES/django.po
+++ b/locale/en_US/LC_MESSAGES/django.po
@@ -116,9 +116,12 @@ msgstr "Also delete {num,plural, one{1 associated batch analysis} other{# associ
msgid "ANALYSIS_DESCRIPTION_BETTER"
msgstr "The BETTER analysis leverages better.lbl.gov to calculate energy, cost, and GHG emission savings by comparing the property's change point model with a benchmarked model. The results include saving potential and a list of recommended high-level energy conservation measures."
-msgid "ANALYSIS_DESCRIPTION_BSYNCR"
+msgid "ANALYSIS_DESCRIPTION_BSyncr"
msgstr "The BSyncr analysis leverages the Normalized Metered Energy Consumption (NMEC) analysis to calculate a change point model. The data are passed to the analysis using BuildingSync. The result of the analysis are the coefficients of the change point model."
+msgid "ANALYSIS_DESCRIPTION_BuildingUpgradeRecommendation"
+msgstr "The Building Upgrade Recommendation analysis implements a workflow to identify buildings that may need a deep energy retrofit, equipment replaced or re-tuning based on building attributes such as energy use, year built, and square footage."
+
msgid "ANALYSIS_DESCRIPTION_CO2"
msgstr "This analysis calculates the average annual CO2 emissions for the property's meter data. The analysis requires an eGRID Subregion to be defined in order to accurately determine the emission rates."
@@ -128,6 +131,9 @@ msgstr "The EEEJ Analysis uses each property's address to identify the 2010 cens
msgid "ANALYSIS_DESCRIPTION_EUI"
msgstr "The EUI analysis will sum the property's meter readings for the last twelve months to calculate the energy use per square footage per year. If there are missing meter readings, then the analysis will return a less that 100% coverage to alert the user that there is a missing meter reading."
+msgid "ANALYSIS_DESCRIPTION_ElementStatistics"
+msgstr "The Element Statistics analysis looks through a property's element data (if any) to count the number of elements of type 'D.D.C. Control Panel' and saves that quantity to the property"
+
msgid "AND"
msgstr "AND"
@@ -541,6 +547,9 @@ msgstr "Normally when an imported record is merged into another record the newes
msgid "COMPLETE_AND_REFRESH"
msgstr "Complete and Refresh Page"
+msgid "CONDITION_INDEX_THRESHOLD_HELP"
+msgstr "The condition index to use as a comparison threshold in the calculations."
+
msgid "CONFIGURE_CYCLES"
msgstr "Select one or more cycles from the dropdown above to visualize in the charts below."
@@ -1414,9 +1423,15 @@ msgstr "Geocoding failed - Your MapQuest API Key is invalid. Update your MapQues
msgid "FAILED_GEOCODE_MAPQUEST_API_KEY_ERROR"
msgstr "Geocoding failed - Your MapQuest API Key is either invalid or at its limit. Update your MapQuest API Key or disable geocoding in Organization Settings."
+msgid "FAIR_BENCHMARK_RATIO_HELP"
+msgstr "The fair ratio of Total EUI to Benchmark Total EUI value to use. Ratio = Total EUI/Benchmark EUI"
+
msgid "FEMP CTS Reporting Export"
msgstr "FEMP CTS Reporting Export"
+msgid "FF_RSL_THRESHOLD_HELP"
+msgstr "The remaining service life value to use for your fossil fuel-fired equipment as a comparison threshold in the calculations. For instance, perhaps your remaining service life threshold is 0 years and your gas boiler has a remaining service life of -1 year, therefore not meeting the threshold."
+
msgid "FIELDS NEEDED TO MAKE MATCHES:"
msgstr "FIELDS NEEDED TO MAKE MATCHES:"
@@ -1432,6 +1447,9 @@ msgstr "Field names for matching"
msgid "FILE_TYPES_SUPPORTED"
msgstr "File types supported: .csv, .xls, .xlsx, .xml, .zip, .geojson, and .json."
+msgid "FOSSIL_FUEL_EUI_HELP"
+msgstr "Fossil Fuel EUI Goal for the building (includes Gas, Etc.)"
+
msgid "Failed to delete inventory"
msgstr "Failed to delete inventory"
@@ -2492,6 +2510,9 @@ msgstr "Portfolio Manager Meter Import Results"
msgid "PM_PROPERTY_ID_MATCHING_CRITERIA_WARNING"
msgstr "Removing PM Property ID from matching criteria can cause unexpected issues for Portfolio Manager Meter imports."
+msgid "POOR_BENCHMARK_RATIO_HELP"
+msgstr "The poor ratio of Total EUI to Benchmark Total EUI value to use. Ratio = Total EUI/Benchmark EUI"
+
msgid "PORTFOLIO_SUMMARY_HEADER_TEXT"
msgstr "The portfolio summary page compares 2 cycles to calculate progress toward an Energy Use Intensity reduction goal. Cycle selection and goal details can be customized by clicking the Configure Goals button below."
@@ -3174,6 +3195,9 @@ msgstr "Showing {start} to {end} of {total} properties"
msgid "SHOWING_UNFILTERED_TAXLOTS"
msgstr "Showing {start} to {end} of {total} tax lots"
+msgid "SQUARE_FOOTAGE_THRESHOLD_HELP"
+msgstr "The gross square footage to use as a comparison threshold in the calculations"
+
msgid "STEP 1: Map Your Data"
msgstr "STEP 1: Map Your Data"
@@ -3484,6 +3508,9 @@ msgstr "At least one of the following Tax Lot fields is required"
msgid "THERMAL_CONV_ASSUMPTION_TITLE"
msgstr "Thermal Conversion Assumption"
+msgid "TOTAL_EUI_HELP"
+msgstr "Total EUI Goal for the building (includes Electricity, Gas, etc.)"
+
msgid "TWO_FACTOR_DISABLED_TEXT"
msgstr "Choosing this option will disable two-factor authentication for your account, making it less secure."
@@ -4105,6 +4132,9 @@ msgstr "{x_axis_label} vs. {y_axis_label} (Aggregated)"
msgid "Y Axis"
msgstr "Y Axis"
+msgid "YEAR_BUILT_THRESHOLD_HELP"
+msgstr "The year built to use as a comparison threshold in the calculations"
+
msgid "Year"
msgstr "Year"
diff --git a/locale/fr_CA/LC_MESSAGES/django.mo b/locale/fr_CA/LC_MESSAGES/django.mo
index 87992f56cf..8d8eea8d1f 100644
Binary files a/locale/fr_CA/LC_MESSAGES/django.mo and b/locale/fr_CA/LC_MESSAGES/django.mo differ
diff --git a/locale/fr_CA/LC_MESSAGES/django.po b/locale/fr_CA/LC_MESSAGES/django.po
index 006fbbf0dc..b8e8f923b2 100644
--- a/locale/fr_CA/LC_MESSAGES/django.po
+++ b/locale/fr_CA/LC_MESSAGES/django.po
@@ -117,9 +117,13 @@ msgstr "Supprimez également {num,plural, one{ 1 analyse de lot associée } othe
msgid "ANALYSIS_DESCRIPTION_BETTER"
msgstr "L'analyse BETTER s'appuie sur better.lbl.gov pour calculer les économies d'énergie, de coûts et d'émissions de GES en comparant le modèle de point de changement de la propriété avec un modèle de référence. Les résultats comprennent un potentiel d'économie et une liste de mesures d'économie d'énergie de haut niveau recommandées."
-msgid "ANALYSIS_DESCRIPTION_BSYNCR"
+msgid "ANALYSIS_DESCRIPTION_BSyncr"
msgstr "L'analyse BSyncr exploite l'analyse de consommation d'énergie normalisée mesurée (NMEC) pour calculer un modèle de point de changement. Les données sont transmises à l'analyse à l'aide de BuildingSync. Le résultat de l'analyse sont les coefficients du modèle de point de changement."
+#, fuzzy
+msgid "ANALYSIS_DESCRIPTION_BuildingUpgradeRecommendation"
+msgstr "Cette analyse met en œuvre un flux de travail pour identifier les bâtiments qui peuvent nécessiter une rénovation énergétique en profondeur, un remplacement ou un réajustement de l'équipement en fonction des attributs du bâtiment tels que la consommation d'énergie, l'année de construction et la superficie en pieds carrés."
+
msgid "ANALYSIS_DESCRIPTION_CO2"
msgstr "Cette analyse calcule les émissions annuelles moyennes de CO2 pour les données des compteurs de la propriété. L’analyse nécessite la définition d’une sous-région eGRID afin de déterminer avec précision les taux d’émission."
@@ -130,6 +134,9 @@ msgstr "L'analyse EEEJ utilise l'adresse de chaque propriété pour identifier l
msgid "ANALYSIS_DESCRIPTION_EUI"
msgstr "L'analyse EUI additionnera les relevés de compteurs de la propriété au cours des douze derniers mois pour calculer la consommation d'énergie par pied carré et par an. S'il manque des relevés de compteur, l'analyse renvoie une couverture inférieure à 100 % pour alerter l'utilisateur qu'il manque un relevé de compteur."
+msgid "ANALYSIS_DESCRIPTION_ElementStatistics"
+msgstr "Cette analyse examine les données des éléments d'une propriété (le cas échéant) pour compter le nombre d'éléments de type « Panneau de configuration DDC » et enregistre cette quantité dans la propriété"
+
msgid "AND"
msgstr "ET"
@@ -549,6 +556,9 @@ msgstr "Normalement, lorsqu'un enregistrement importé est fusionné dans un aut
msgid "COMPLETE_AND_REFRESH"
msgstr "Complétez et Actualisez la Page"
+msgid "CONDITION_INDEX_THRESHOLD_HELP"
+msgstr "L'indice de condition à utiliser comme seuil de comparaison dans les calculs."
+
msgid "CONFIGURE_CYCLES"
msgstr "Sélectionnez un ou plusieurs cycles dans la liste déroulante ci-dessus pour visualiser dans les graphiques ci-dessous."
@@ -1427,9 +1437,15 @@ msgstr "Échec du géocodage : votre clé API MapQuest n'est pas valide. Mettez
msgid "FAILED_GEOCODE_MAPQUEST_API_KEY_ERROR"
msgstr "Échec du géocodage : votre clé API MapQuest n'est pas valide ou a atteint sa limite. Mettez à jour votre clé API MapQuest ou désactivez le géocodage dans les paramètres de l'organisation."
+msgid "FAIR_BENCHMARK_RATIO_HELP"
+msgstr "Le ratio équitable entre le total de l'IUE et la valeur totale de référence de l'IUE à utiliser. Ratio = Total de l'IUE/Indice de référence de l'IUE"
+
msgid "FEMP CTS Reporting Export"
msgstr "Export pour FEMP CTS"
+msgid "FF_RSL_THRESHOLD_HELP"
+msgstr "La valeur de la durée de vie restante à utiliser pour votre équipement alimenté au combustible fossile comme seuil de comparaison dans les calculs. Par exemple, votre seuil de durée de vie restante est peut-être de 0 an et votre chaudière à gaz a une durée de vie restante de -1 an, ce qui ne correspond donc pas au seuil."
+
msgid "FIELDS NEEDED TO MAKE MATCHES:"
msgstr "CHAMPS NÉCESSAIRES POUR ÉTABLIR DES CORRESPONDANCES:"
@@ -1445,6 +1461,9 @@ msgstr "Noms de zone pour l'appariement"
msgid "FILE_TYPES_SUPPORTED"
msgstr "Types de fichiers pris en charge: .csv, .xls, .xlsx, .xml, .zip, .geojson, et .json."
+msgid "FOSSIL_FUEL_EUI_HELP"
+msgstr "Objectif d'IEC en matière de combustibles fossiles pour le bâtiment (y compris le gaz, etc.)"
+
msgid "Failed to delete inventory"
msgstr "Échec de la suppression de l'inventaire"
@@ -2510,6 +2529,9 @@ msgstr "Résultats d'importation de Portfolio Manager"
msgid "PM_PROPERTY_ID_MATCHING_CRITERIA_WARNING"
msgstr "La suppression de l'ID de propriété PM des critères de correspondance peut entraîner des problèmes inattendus pour les importations de compteurs Portfolio Manager."
+msgid "POOR_BENCHMARK_RATIO_HELP"
+msgstr "Le ratio entre l'IUE total et la valeur de l'IUE total de référence est faible. Ratio = IUE total/IUE de référence"
+
msgid "PORTFOLIO_SUMMARY_HEADER_TEXT"
msgstr "La page de résumé du portefeuille compare 2 cycles pour calculer les progrès vers un objectif de réduction de l'intensité de l'utilisation d'énergie. La sélection du cycle et les détails des objectifs peuvent être personnalisés en cliquant sur le bouton Configurer les Objectifs ci-dessous."
@@ -3202,6 +3224,9 @@ msgstr "Affichage {start} à {end} des {total} propriétés en tout"
msgid "SHOWING_UNFILTERED_TAXLOTS"
msgstr "Affichage {start} à {end} des {total} lots d'impôt en tout"
+msgid "SQUARE_FOOTAGE_THRESHOLD_HELP"
+msgstr "La superficie brute à utiliser comme seuil de comparaison dans les calculs"
+
msgid "STEP 1: Map Your Data"
msgstr "ÉTAPE 1: Mappez vos données"
@@ -3513,6 +3538,9 @@ msgstr "Au moins l'un des domaines fiscal Lot suivants est requis"
msgid "THERMAL_CONV_ASSUMPTION_TITLE"
msgstr "Choix de Conversion Thermique"
+msgid "TOTAL_EUI_HELP"
+msgstr "Objectif EUI total pour le bâtiment (comprend l'électricité, le gaz, etc.)"
+
msgid "TWO_FACTOR_DISABLED_TEXT"
msgstr "Choisir cette option désactivera l’authentification à deux facteurs pour votre compte, le rendant moins sécurisé."
@@ -4139,6 +4167,9 @@ msgstr "{x_axis_label} contre {y_axis_label} (agrégé)"
msgid "Y Axis"
msgstr "Axe Y"
+msgid "YEAR_BUILT_THRESHOLD_HELP"
+msgstr "L'année de construction à utiliser comme seuil de comparaison dans les calculs"
+
msgid "Year"
msgstr "An"
diff --git a/requirements/base.txt b/requirements/base.txt
index a98ae51b7f..5ce2726055 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -52,6 +52,7 @@ requests==2.32.0
probablepeople==0.5.4
xmlschema==1.1.1
lark==0.11.3
+pandas==2.2.2
# Parsing and managing geojson data (this is only used in managed tasks at the moment)
geojson==2.5.0
diff --git a/seed/static/seed/js/controllers/export_to_cts_modal_controller.js b/seed/static/seed/js/controllers/export_to_cts_modal_controller.js
index fd2721c89b..7a9e03d2c8 100644
--- a/seed/static/seed/js/controllers/export_to_cts_modal_controller.js
+++ b/seed/static/seed/js/controllers/export_to_cts_modal_controller.js
@@ -11,39 +11,42 @@ angular.module('SEED.controller.export_to_cts_modal', []).controller('export_to_
'ids',
'org_id',
'inventory_service',
- 'uploader_service',
// eslint-disable-next-line func-names
- function ($http, $scope, $state, $uibModalInstance, user_service, ids, org_id, inventory_service, uploader_service) {
- $scope.ids = ids;
- $scope.org_id = org_id;
+ function ($http, $scope, $state, $uibModalInstance, user_service, ids, org_id, inventory_service) {
$scope.exporting = false;
+ /**
+ * @type {'evaluation_template' | 'facility_bps_template' | null}
+ */
+ $scope.export_selection = null;
+ $scope.set_selection = (selection) => {
+ $scope.export_selection = selection;
+ };
+
+ $scope.set_name = (name) => {
+ $scope.export_name = name;
+ };
+
$scope.export = () => {
let filename = $scope.export_name;
if (!filename.endsWith('.xlsx')) filename += '.xlsx';
$scope.exporting = true;
- $http.get('/api/v3/tax_lot_properties/start_export_to_cts/', {
- params: {
- organization_id: user_service.get_organization().id
- }
- })
- .then((data) => {
- uploader_service.check_progress_loop(
- data.data.progress_key,
- 0,
- 1,
- () => {},
- () => {},
- $scope.exporter_progress
- );
- return inventory_service.export_to_cts(ids).then((data) => {
- const blob_type = data.headers()['content-type'];
- const blob = new Blob([data.data], { type: blob_type });
- saveAs(blob, filename);
- $scope.close();
- });
+ if ($scope.export_selection === 'evaluation_template') {
+ inventory_service.evaluation_export_to_cts(ids).then((data) => {
+ const blob_type = data.headers()['content-type'];
+ const blob = new Blob([data.data], { type: blob_type });
+ saveAs(blob, filename);
+ $scope.close();
+ });
+ } else if ($scope.export_selection === 'facility_bps_template') {
+ inventory_service.facility_bps_export_to_cts(org_id, { property_view_ids: ids }).then((data) => {
+ const blob_type = data.headers()['content-type'];
+ const blob = new Blob([data.data], { type: blob_type });
+ saveAs(blob, filename);
+ $scope.close();
});
+ }
};
$scope.cancel = () => {
diff --git a/seed/static/seed/js/services/inventory_service.js b/seed/static/seed/js/services/inventory_service.js
index 6d4763f8a4..395383285f 100644
--- a/seed/static/seed/js/services/inventory_service.js
+++ b/seed/static/seed/js/services/inventory_service.js
@@ -1212,8 +1212,10 @@ angular.module('SEED.service.inventory', []).factory('inventory_service', [
organization_id: user_service.get_organization().id
});
- inventory_service.export_to_cts = (property_view_ids, filename = 'test.xlsx') => $http.post(
- `/api/v3/tax_lot_properties/export_to_cts/?organization_id=${user_service.get_organization().id}`,
+ // this is the CTS Comprehensive Evaluation Upload Template
+ // which uses the BAE/BuildingSync workflow
+ inventory_service.evaluation_export_to_cts = (property_view_ids, filename = 'test.xlsx') => $http.post(
+ `/api/v3/properties/evaluation_export_to_cts/?organization_id=${user_service.get_organization().id}`,
{
filename,
property_view_ids
@@ -1223,6 +1225,15 @@ angular.module('SEED.service.inventory', []).factory('inventory_service', [
}
);
+ // this is the CTS Facility Upload Template for Federal BPS
+ // which uses the SEED-based workflow (not buildingsync)
+ inventory_service.facility_bps_export_to_cts = (org_id, property_view_ids) => $http
+ .post(
+ `/api/v3/properties/facility_bps_export_to_cts/?organization_id=${org_id}`,
+ property_view_ids,
+ { responseType: 'arraybuffer' }
+ );
+
inventory_service.filter_by_property = (cycle_id, property_ids) => $http.post('/api/v3/properties/filter_by_property/', {
organization_id: user_service.get_organization().id,
cycle: cycle_id,
diff --git a/seed/static/seed/locales/en_US.json b/seed/static/seed/locales/en_US.json
index 7402b5929d..656df3c6e6 100644
--- a/seed/static/seed/locales/en_US.json
+++ b/seed/static/seed/locales/en_US.json
@@ -34,10 +34,12 @@
"ALSO_DELETE_ANALYSES": "Also delete {num,plural, one{1 analysis} other{# analyses}}.",
"ALSO_DELETE_BATCH_ANALYSES": "Also delete {num,plural, one{1 associated batch analysis} other{# associated batch analyses}}.",
"ANALYSIS_DESCRIPTION_BETTER": "The BETTER analysis leverages better.lbl.gov to calculate energy, cost, and GHG emission savings by comparing the property's change point model with a benchmarked model. The results include saving potential and a list of recommended high-level energy conservation measures.",
- "ANALYSIS_DESCRIPTION_BSYNCR": "The BSyncr analysis leverages the Normalized Metered Energy Consumption (NMEC) analysis to calculate a change point model. The data are passed to the analysis using BuildingSync. The result of the analysis are the coefficients of the change point model.",
+ "ANALYSIS_DESCRIPTION_BSyncr": "The BSyncr analysis leverages the Normalized Metered Energy Consumption (NMEC) analysis to calculate a change point model. The data are passed to the analysis using BuildingSync. The result of the analysis are the coefficients of the change point model.",
+ "ANALYSIS_DESCRIPTION_BuildingUpgradeRecommendation": "The Building Upgrade Recommendation analysis implements a workflow to identify buildings that may need a deep energy retrofit, equipment replaced or re-tuning based on building attributes such as energy use, year built, and square footage.",
"ANALYSIS_DESCRIPTION_CO2": "This analysis calculates the average annual CO2 emissions for the property's meter data. The analysis requires an eGRID Subregion to be defined in order to accurately determine the emission rates.",
"ANALYSIS_DESCRIPTION_EEEJ": "The EEEJ Analysis uses each property's address to identify the 2010 census tract. Based on census tract, disadvantaged community classification and energy burden information can be retrieved from the CEJST dataset. The number of affordable housing locations is retrieved from HUD datasets. Location is used to generate a link to view an EJScreen Report providing more demographic indicators.",
"ANALYSIS_DESCRIPTION_EUI": "The EUI analysis will sum the property's meter readings for the last twelve months to calculate the energy use per square footage per year. If there are missing meter readings, then the analysis will return a less that 100% coverage to alert the user that there is a missing meter reading.",
+ "ANALYSIS_DESCRIPTION_ElementStatistics": "The Element Statistics analysis looks through a property's element data (if any) to count the number of elements of type 'D.D.C. Control Panel' and saves that quantity to the property",
"AND": "AND",
"API Documentation": "API Documentation",
"API Key": "API Key",
@@ -173,6 +175,7 @@
"COL_MATCHING_CRITERIA_TOGGLE": "Checking this box for a field will allow it to be used as a matching field.",
"COL_MERGE_PROTECTION_TOGGLE": "Normally when an imported record is merged into another record the newest value overwrites an older one. Merge protection prevents this, and is particularly useful for columns where you have manually edited values that you want to persist even after importing and merging new data.",
"COMPLETE_AND_REFRESH": "Complete and Refresh Page",
+ "CONDITION_INDEX_THRESHOLD_HELP": "The condition index to use as a comparison threshold in the calculations.",
"CONFIGURE_CYCLES": "Select one or more cycles from the dropdown above to visualize in the charts below.",
"CONFIGURE_PROGRAM": "Need to configure your Program?",
"CONFIGURE_XY_AXES": "to configure the set of columns selectable as X and Y axes. These can be set on the Default Display Fields tab.",
@@ -459,12 +462,15 @@
"Exporting selected properties...": "Exporting selected properties...",
"FAILED_GEOCODE_INVALID_MAPQUEST_API_KEY": "Geocoding failed - Your MapQuest API Key is invalid. Update your MapQuest API Key or disable geocoding in Organization Settings.",
"FAILED_GEOCODE_MAPQUEST_API_KEY_ERROR": "Geocoding failed - Your MapQuest API Key is either invalid or at its limit. Update your MapQuest API Key or disable geocoding in Organization Settings.",
+ "FAIR_BENCHMARK_RATIO_HELP": "The fair ratio of Total EUI to Benchmark Total EUI value to use. Ratio = Total EUI\/Benchmark EUI",
"FEMP CTS Reporting Export": "FEMP CTS Reporting Export",
+ "FF_RSL_THRESHOLD_HELP": "The remaining service life value to use for your fossil fuel-fired equipment as a comparison threshold in the calculations. For instance, perhaps your remaining service life threshold is 0 years and your gas boiler has a remaining service life of -1 year, therefore not meeting the threshold.",
"FIELDS NEEDED TO MAKE MATCHES:": "FIELDS NEEDED TO MAKE MATCHES:",
"FIELD_NAMES_FOR_GEOCODING_PROPERTIES": "Field names for geocoding properties",
"FIELD_NAMES_FOR_GEOCODING_TAXLOTS": "Field names for geocoding tax lots",
"FIELD_NAMES_FOR_MATCHING": "Field names for matching",
"FILE_TYPES_SUPPORTED": "File types supported: .csv<\/strong>, .xls<\/strong>, .xlsx<\/strong>, .xml<\/strong>, .zip<\/strong>, .geojson<\/strong>, and .json<\/strong>.",
+ "FOSSIL_FUEL_EUI_HELP": "Fossil Fuel EUI Goal for the building (includes Gas, Etc.)",
"Failed to delete inventory": "Failed to delete inventory",
"Fetching your buildings from Audit Template...": "Fetching your buildings from Audit Template...",
"Field": "Field",
@@ -813,6 +819,7 @@
"PM_METER_IMPORT_NO_ASSOCIATION": "Unable to Import - No associations to previously imported properties",
"PM_METER_IMPORT_RESULTS": "Portfolio Manager Meter Import Results",
"PM_PROPERTY_ID_MATCHING_CRITERIA_WARNING": "Removing PM Property ID from matching criteria can cause unexpected issues for Portfolio Manager Meter imports.",
+ "POOR_BENCHMARK_RATIO_HELP": "The poor ratio of Total EUI to Benchmark Total EUI value to use. Ratio = Total EUI\/Benchmark EUI",
"PORTFOLIO_SUMMARY_HEADER_TEXT": "The portfolio summary page compares 2 cycles to calculate progress toward an Energy Use Intensity reduction goal. Cycle selection and goal details can be customized by clicking the Configure Goals button below.",
"POST_GEOCODING_COUNTS": "Updated counts after geocoding",
"PROPERTY_MATCHING_FIELDS_REQUIREMENT": "At least one of the following Property fields is required",
@@ -1035,6 +1042,7 @@
"SHOWING_PAIRED_UNPAIRED_TAXLOTS": "Showing {paired_count} {paired_count,plural,one{Tax Lot} other{Tax Lots}} ({unpaired_count} unpaired)",
"SHOWING_UNFILTERED_PROPERTIES": "Showing {start} to {end} of {total} properties",
"SHOWING_UNFILTERED_TAXLOTS": "Showing {start} to {end} of {total} tax lots",
+ "SQUARE_FOOTAGE_THRESHOLD_HELP": "The gross square footage to use as a comparison threshold in the calculations",
"STEP 1: Map Your Data": "STEP 1: Map Your Data",
"STEP 2: Review Your Data Mappings": "STEP 2: Review Your Data Mappings",
"SUB_ORG_DEPRECATION": "The Sub-Organization functionality is no longer recommended and will be deprecated soon. Visit the Access Level Tree page to define access levels to structure your organization's content.",
@@ -1137,6 +1145,7 @@
"Switch Profiles": "Switch Profiles",
"TAXLOT_MATCHING_FIELDS_REQUIREMENT": "At least one of the following Tax Lot fields is required",
"THERMAL_CONV_ASSUMPTION_TITLE": "Thermal Conversion Assumption",
+ "TOTAL_EUI_HELP": "Total EUI Goal for the building (includes Electricity, Gas, etc.)",
"TWO_FACTOR_DISABLED_TEXT": "Choosing this option will disable two-factor authentication for your account, making it less secure.",
"TWO_FACTOR_EMAIL_SELECTED_TEXT": "Selecting this option will enable two-factor authentication via email ({email}). You will receive a verification code through your registered email address each time you log in.",
"TWO_FACTOR_ENABLE": "Enable Two-Factor Authentication for your account",
@@ -1335,6 +1344,7 @@
"X_VERSUS_Y": "{x_axis_label} vs. {y_axis_label}",
"X_VERSUS_Y_AGGREGATED": "{x_axis_label} vs. {y_axis_label} (Aggregated)",
"Y Axis": "Y Axis",
+ "YEAR_BUILT_THRESHOLD_HELP": "The year built to use as a comparison threshold in the calculations",
"Year": "Year",
"Year Built": "Year Built",
"Year Ending": "Year Ending",
diff --git a/seed/static/seed/locales/fr_CA.json b/seed/static/seed/locales/fr_CA.json
index 778583a5c6..775318bd43 100644
--- a/seed/static/seed/locales/fr_CA.json
+++ b/seed/static/seed/locales/fr_CA.json
@@ -34,10 +34,12 @@
"ALSO_DELETE_ANALYSES": "Supprimez également {num,plural, one{ 1 analyse } other{# analyses }} .",
"ALSO_DELETE_BATCH_ANALYSES": "Supprimez également {num,plural, one{ 1 analyse de lot associée } other{# analyses de lot associées }} .",
"ANALYSIS_DESCRIPTION_BETTER": "L'analyse BETTER s'appuie sur better.lbl.gov pour calculer les économies d'énergie, de coûts et d'émissions de GES en comparant le modèle de point de changement de la propriété avec un modèle de référence. Les résultats comprennent un potentiel d'économie et une liste de mesures d'économie d'énergie de haut niveau recommandées.",
- "ANALYSIS_DESCRIPTION_BSYNCR": "L'analyse BSyncr exploite l'analyse de consommation d'énergie normalisée mesurée (NMEC) pour calculer un modèle de point de changement. Les données sont transmises à l'analyse à l'aide de BuildingSync. Le résultat de l'analyse sont les coefficients du modèle de point de changement.",
+ "ANALYSIS_DESCRIPTION_BSyncr": "L'analyse BSyncr exploite l'analyse de consommation d'énergie normalisée mesurée (NMEC) pour calculer un modèle de point de changement. Les données sont transmises à l'analyse à l'aide de BuildingSync. Le résultat de l'analyse sont les coefficients du modèle de point de changement.",
+ "ANALYSIS_DESCRIPTION_BuildingUpgradeRecommendation": "Cette analyse met en œuvre un flux de travail pour identifier les bâtiments qui peuvent nécessiter une rénovation énergétique en profondeur, un remplacement ou un réajustement de l'équipement en fonction des attributs du bâtiment tels que la consommation d'énergie, l'année de construction et la superficie en pieds carrés.",
"ANALYSIS_DESCRIPTION_CO2": "Cette analyse calcule les émissions annuelles moyennes de CO2 pour les données des compteurs de la propriété. L’analyse nécessite la définition d’une sous-région eGRID afin de déterminer avec précision les taux d’émission.",
"ANALYSIS_DESCRIPTION_EEEJ": "L'analyse EEEJ utilise l'adresse de chaque propriété pour identifier le secteur de recensement de 2010. Sur la base des secteurs de recensement, la classification des communautés défavorisées et les informations sur la charge énergétique peuvent être extraites de l'ensemble de données CEJST. Le nombre de logements abordables est extrait des ensembles de données HUD. L'emplacement est utilisé pour générer un lien permettant d'afficher un rapport EJScreen fournissant davantage d'indicateurs démographiques.",
"ANALYSIS_DESCRIPTION_EUI": "L'analyse EUI additionnera les relevés de compteurs de la propriété au cours des douze derniers mois pour calculer la consommation d'énergie par pied carré et par an. S'il manque des relevés de compteur, l'analyse renvoie une couverture inférieure à 100 % pour alerter l'utilisateur qu'il manque un relevé de compteur.",
+ "ANALYSIS_DESCRIPTION_ElementStatistics": "Cette analyse examine les données des éléments d'une propriété (le cas échéant) pour compter le nombre d'éléments de type « Panneau de configuration DDC » et enregistre cette quantité dans la propriété",
"AND": "ET",
"API Documentation": "Documentation de l'API",
"API Key": "Clé API",
@@ -173,6 +175,7 @@
"COL_MATCHING_CRITERIA_TOGGLE": "Pour les colonnes non extra_data, indiquez si la colonne correspond aux critères",
"COL_MERGE_PROTECTION_TOGGLE": "Normalement, lorsqu'un enregistrement importé est fusionné dans un autre enregistrement, la valeur la plus récente remplace un enregistrement plus ancien. La protection de fusion empêche cela et est particulièrement utile pour les colonnes dans lesquelles vous avez manuellement modifié les valeurs que vous souhaitez conserver même après l'importation et la fusion de nouvelles données.",
"COMPLETE_AND_REFRESH": "Complétez et Actualisez la Page",
+ "CONDITION_INDEX_THRESHOLD_HELP": "L'indice de condition à utiliser comme seuil de comparaison dans les calculs.",
"CONFIGURE_CYCLES": "Sélectionnez un ou plusieurs cycles dans la liste déroulante ci-dessus pour visualiser dans les graphiques ci-dessous.",
"CONFIGURE_PROGRAM": "Besoin de configurer votre programme?",
"CONFIGURE_XY_AXES": "pour configurer l'ensemble des colonnes sélectionnables comme axes X et Y. Ceux-ci peuvent être définis dans l’onglet Champs d’affichage par défaut.",
@@ -459,12 +462,15 @@
"Exporting selected properties...": "Exportation des propriétés sélectionnées...",
"FAILED_GEOCODE_INVALID_MAPQUEST_API_KEY": "Échec du géocodage : votre clé API MapQuest n'est pas valide. Mettez à jour votre clé API MapQuest ou désactivez le géocodage dans les paramètres de l'organisation.",
"FAILED_GEOCODE_MAPQUEST_API_KEY_ERROR": "Échec du géocodage : votre clé API MapQuest n'est pas valide ou a atteint sa limite. Mettez à jour votre clé API MapQuest ou désactivez le géocodage dans les paramètres de l'organisation.",
+ "FAIR_BENCHMARK_RATIO_HELP": "Le ratio équitable entre le total de l'IUE et la valeur totale de référence de l'IUE à utiliser. Ratio = Total de l'IUE\/Indice de référence de l'IUE",
"FEMP CTS Reporting Export": "Export pour FEMP CTS",
+ "FF_RSL_THRESHOLD_HELP": "La valeur de la durée de vie restante à utiliser pour votre équipement alimenté au combustible fossile comme seuil de comparaison dans les calculs. Par exemple, votre seuil de durée de vie restante est peut-être de 0 an et votre chaudière à gaz a une durée de vie restante de -1 an, ce qui ne correspond donc pas au seuil.",
"FIELDS NEEDED TO MAKE MATCHES:": "CHAMPS NÉCESSAIRES POUR ÉTABLIR DES CORRESPONDANCES:",
"FIELD_NAMES_FOR_GEOCODING_PROPERTIES": "Noms de champs pour les propriétés de géocodage",
"FIELD_NAMES_FOR_GEOCODING_TAXLOTS": "Noms de zone pour les lots de taxe de géocodage",
"FIELD_NAMES_FOR_MATCHING": "Noms de zone pour l'appariement",
"FILE_TYPES_SUPPORTED": "Types de fichiers pris en charge: .csv<\/strong>, .xls<\/strong>, .xlsx<\/strong>, .xml<\/strong>, .zip<\/strong>, .geojson<\/strong>, et .json<\/strong>.",
+ "FOSSIL_FUEL_EUI_HELP": "Objectif d'IEC en matière de combustibles fossiles pour le bâtiment (y compris le gaz, etc.)",
"Failed to delete inventory": "Échec de la suppression de l'inventaire",
"Fetching your buildings from Audit Template...": "Récupération de vos bâtiments à partir du modèle d'audit...",
"Field": "Champ",
@@ -813,6 +819,7 @@
"PM_METER_IMPORT_NO_ASSOCIATION": "Importation impossible - Aucune association à des propriétés précédemment importées",
"PM_METER_IMPORT_RESULTS": "Résultats d'importation de Portfolio Manager",
"PM_PROPERTY_ID_MATCHING_CRITERIA_WARNING": "La suppression de l'ID de propriété PM des critères de correspondance peut entraîner des problèmes inattendus pour les importations de compteurs Portfolio Manager.",
+ "POOR_BENCHMARK_RATIO_HELP": "Le ratio entre l'IUE total et la valeur de l'IUE total de référence est faible. Ratio = IUE total\/IUE de référence",
"PORTFOLIO_SUMMARY_HEADER_TEXT": "La page de résumé du portefeuille compare 2 cycles pour calculer les progrès vers un objectif de réduction de l'intensité de l'utilisation d'énergie. La sélection du cycle et les détails des objectifs peuvent être personnalisés en cliquant sur le bouton Configurer les Objectifs ci-dessous.",
"POST_GEOCODING_COUNTS": "Nombre mis à jour après le géocodage",
"PROPERTY_MATCHING_FIELDS_REQUIREMENT": "Au moins un des champs de propriété suivants est requis",
@@ -1035,6 +1042,7 @@
"SHOWING_PAIRED_UNPAIRED_TAXLOTS": "Affichage {paired_count} {paired_count, plural, one{Lot d'impôt} other{Lots d'impôt}} ({unpaired_count} non apparié)",
"SHOWING_UNFILTERED_PROPERTIES": "Affichage {start} à {end} des {total} propriétés en tout",
"SHOWING_UNFILTERED_TAXLOTS": "Affichage {start} à {end} des {total} lots d'impôt en tout",
+ "SQUARE_FOOTAGE_THRESHOLD_HELP": "La superficie brute à utiliser comme seuil de comparaison dans les calculs",
"STEP 1: Map Your Data": "ÉTAPE 1: Mappez vos données",
"STEP 2: Review Your Data Mappings": "ÉTAPE 2: Consultez vos mappages de données",
"SUB_ORG_DEPRECATION": "La fonctionnalité Sous-organisation n’est plus recommandée et sera bientôt obsolète. Visitez la page des niveaux d'accès pour définir les niveaux d'accès afin de structurer le contenu de votre organisation.",
@@ -1137,6 +1145,7 @@
"Switch Profiles": "Changer de profil",
"TAXLOT_MATCHING_FIELDS_REQUIREMENT": "Au moins l'un des domaines fiscal Lot suivants est requis",
"THERMAL_CONV_ASSUMPTION_TITLE": "Choix de Conversion Thermique",
+ "TOTAL_EUI_HELP": "Objectif EUI total pour le bâtiment (comprend l'électricité, le gaz, etc.)",
"TWO_FACTOR_DISABLED_TEXT": "Choisir cette option désactivera l’authentification à deux facteurs pour votre compte, le rendant moins sécurisé.",
"TWO_FACTOR_EMAIL_SELECTED_TEXT": "La sélection de cette option activera l'authentification à deux facteurs par e-mail ( {email} ). Vous recevrez un code de vérification via votre adresse e-mail enregistrée à chaque fois que vous vous connecterez.",
"TWO_FACTOR_ENABLE": "Activer l'authentification à deux facteurs pour votre compte",
@@ -1335,6 +1344,7 @@
"X_VERSUS_Y": "{x_axis_label} contre {y_axis_label}",
"X_VERSUS_Y_AGGREGATED": "{x_axis_label} contre {y_axis_label} (agrégé)",
"Y Axis": "Axe Y",
+ "YEAR_BUILT_THRESHOLD_HELP": "L'année de construction à utiliser comme seuil de comparaison dans les calculs",
"Year": "An",
"Year Built": "Année de construction",
"Year Ending": "Fin de l'année",
diff --git a/seed/static/seed/partials/export_to_cts_modal.html b/seed/static/seed/partials/export_to_cts_modal.html
index 0c96440c37..72ad8950b4 100644
--- a/seed/static/seed/partials/export_to_cts_modal.html
+++ b/seed/static/seed/partials/export_to_cts_modal.html
@@ -1,31 +1,46 @@
Select a reporting template to export for the Federal Energy Management Program (FEMP) Energy Independence and Security Act of 2007 (EISA) Compliance Tracking System (CTS)