diff --git a/docs/docs/UpdatingMessageVersion.md b/docs/docs/UpdatingMessageVersion.md new file mode 100644 index 0000000..284bcc7 --- /dev/null +++ b/docs/docs/UpdatingMessageVersion.md @@ -0,0 +1,55 @@ +# Oppdatere meldingsversjon +Ved nye meldingsversjoner skal `KppParser` oppdaters til å kunne ta i mot den nye meldingsversjonen. +Dette dokumentet inneholder en oppskrift for hvordan man oppdaterer KppParser med ny `meldingsversjonsnummer`. + +Det er viktig å vite at `meldingsversjonsnummeret` er noe annet enn `KppParse` sitt versjonsnummer. + +Mer informasjon om meldingsversjon finner du [her](https://www.fhi.no/he/npr/registrering-og-rapportering/informasjonsmodell-og-meldinger/). + +## 1. Oppdatere XSD-filer +1.1. Oppdatere XSD-filer i Resources-mappen til Dhhr.KppParser.Service + + Filstien til mappen: + ``` + .src\Dhhr.KppParser.Service\Resources + ``` + Filer som skal fjernes: + - NPR.xsd + - NPR(kpp).xsd + - NPR(kpp)_CodingSchemes.xsd + + Filer som skal legges til, og som kan hentes fra [Sarepta](https://git.sarepta.ehelse.no/utvikling/xpr/-/tree/master?ref_type=heads) på `branch` med `riktig meldingsversjonsnummer`: + - NPR.xsd + - XPR(kpp).xsd + - XPR(kpp)_CodingSchemes.xsd + + 1.2. Endre filnavnet til `XPR(kpp).xsd` til `NPR(kpp).xsd` + + 1.3. Endre filnavnet til `XPR(kpp)_CodingSchemes.xsd` til `NPR(kpp)_CodingSchemes.xsd` + + 1.4. Sørg for at alle `schemaLocation`-attributter i de tre `NPR*.xsd-filene` refererer til `NPR`, ikke `XPR` + +## 2. Maunell oppatering av meldingsversjonsnummeret i koden + 2.1. Oppdatér `meldingsversjonsnummeret` angitt i `Namespace` for `XmlElement`-attributtet i + ``` + .\Dhhr.KppParser.Service\Models\RefDocContent.cs` + ``` + 2.2 Oppdatere `meldingsversjonsnummeret` angitt i `versjon` og `lokalident` for `Melding`-attributtet i + ``` + .\Dhhr.KppParser.Service.Tests\Resources\Expectations\TestMelding.xml` + ``` +## 3. Skript for oppdatering av meldingsversjonsnummeret i koden + 3.1. Kjør denne kommandoen på filstien `".\src"` for å finne riktig filsti og oppdatere alle klassene i `Dhhr.KppParser.Service` med riktig referering til `meldingsversjonsnummer`: + ``` + cd .\Dhhr.KppParser.Service; C:\"Program Files (x86)"\"Microsoft SDKs"\Windows\v10.0A\bin\"NETFX 4.8 Tools"\xsd.exe Resources\"NPR(kpp).xsd" /c /n:Dhhr.KppParser.Service.Models /o:Models + ``` + Dokumentasjon finnes [hos Microsoft](https://learn.microsoft.com/en-us/dotnet/standard/serialization/xml-schema-definition-tool-xsd-exe). + + 3.2 Søk etter om alle `meldingsversjonsnummer` i koden er oppdatert. + + Hvis ikke alle `meldingsversjonsnummer` er oppdatert: Korrigere manuelt der ikke har blitt oppdatert og dokumenter i [Manuell oppdatering av meldingsversjonsnummeret i koden](https://github.com/folkehelseinstituttet/KppParser/edit/feature/docs-updatemessageversion-detailed-v2/docs/docs/UpdatingMessageVersion.md#2-maunell-oppatering-av-meldingsversjonsnummeret-i-koden). + +## 5. Publiser ny versjon + 5.1 Gjør det som er beskrevet i [Publiser ny versjon](https://github.com/folkehelseinstituttet/KppParser/edit/feature/docs-updatemessageversion-detailed-v2/readme.md#publisere-ny-versjon) i Readme.md + + diff --git a/readme.md b/readme.md index 1815681..b016fd1 100644 --- a/readme.md +++ b/readme.md @@ -6,14 +6,31 @@ Det er to måter å kjøre programmet: - Kjøre konsoll-appen (ConsoleApp) -# Publisere ny versjon +# Release ny versjon + +## Oppdater kppParser sitt versjonsnummer +1. Oppdatér alle ``-verdier (i `.csproj`-filer) til nytt versjonsnummer (format: `x.y.z.*`) + + Filstiene til de aktuelle .cproj-filene: +``` +.\Dhhr.KppParser.ConsoleApp\Dhhr.KppParser.ConsoleApp.csproj +``` +``` +.\Dhhr.KppParser.Gui\Dhhr.KppParser.Gui.csproj +``` +2. Oppdatér `versjonEpj`-verdien i `Dhhr.KppParser.Gui` → `appsettings.json` til nytt versjonsnummer (format: `x.y.z`) + + Filstien til appsettings.json: +``` +.\Dhhr.KppParser.Gui\appsettings.json +``` ## Lage programmene Gui og ConsoleApp Både Gui og ConsoleApp lages med denne kommandoen ``` cd .\Dhhr.KppParser.ConsoleApp; dotnet publish -c Release -r win-x64 --no-self-contained -p:PublishSingleFile=true; cd ..\Dhhr.KppParser.Gui; dotnet publish -c Release -r win-x64 --no-self-contained -p:PublishSingleFile=true ``` -_Denne kommandoen finner riktig filstier og lager programmene_ +_Denne kommandoen finner riktige filstier og lager programmene_ Programmene får disse filstiene: ``` @@ -30,22 +47,12 @@ Test csv-filer for episode og tjeneste finnes i mappen: ``` ## Før release -1. Oppdater versjonsnummer i filene: -``` -.\Dhhr.KppParser.ConsoleApp\Dhhr.KppParser.ConsoleApp.csproj -``` -``` -.\Dhhr.KppParser.Gui\Dhhr.KppParser.Gui.csproj -``` -``` -.\Dhhr.KppParser.Gui\appsettings.json -``` -2. Oppdatere dokumentasjonen (readme.md og mappen docs) hvis det oppdages feil i dokumetasjonen og/eller hvis det er viktige opplysninger som bør noteres ned. -3. Lage en pull request for å merge koden til main i Github +1. Oppdatere dokumentasjonen (readme.md og mappen docs) hvis det oppdages feil i dokumetasjonen og/eller hvis det er viktige opplysninger som bør noteres ned +2. Lage en pull request for å merge koden til main i Github +3. Merge til main -## Publisere på github -Etter at pull requesten er godkjent og merget til main: +## Release programmene på github 1. Opprett ny release på github 2. Oppgi tittel basert på hva som er forandret 4. Sett tag et fornuftig versjonsnummer (bruk samme versjonsnummer som i .csproj) @@ -57,7 +64,7 @@ Etter at pull requesten er godkjent og merget til main: ``` ".\Dhhr.KppParser.Gui\bin\Release\net6.0-windows\win-x64\publish" ``` - _Disse mappene ble generert når programmene ble laget (se over, Lage programmene Gui og ConsoleApp)_ + _Disse mappene ble generert når programmene ble laget (se over, [Lage programmene Gui og ConsoleApp](https://github.com/folkehelseinstituttet/KppParser/edit/feature/docs-updatemessageversion-detailed-v2/readme.md#lage-programmene-gui-og-consoleapp))_ 6. Gi zip-filene henholdsvis disse navnene "KppParser-ConsoleApp.zip" og "KppParser-Gui.zip"