Pas på grænsekontrollen!

Eller i hvert fald de faste grænser som et system som Klassisk Dynamisk C5 er født med:

 

Der er naturligvis flere af den slags begrænsninger – bl.a. også en lidt spøjs en i C5UTIL.*-filerne som gør at de max kan være på 256MB pr. stk.

Sagen er nemlig den at C5UTIL-filerne håndteres som en stor 4GB fil – der så er delt ind i 16 stk. 256MB filer. Det gør jo desværre så at hver af dem max kan være på 256MB.

 

Faktisk er der kun defineret 12 C5UTIL-filer lige p.t., hvorfor der er plads til 4 ekstra som Microsoft dog næppe nogensinde kommer til at bruge nu da Klassisk Dynamics C5 er på vej ud. De 12 C5UTIL-filer har følgende fil-extensions:

  • C5UTIL.SYS/.SYP (i ældre C5’ere) eller .C5S/.C5P (i nyere C5’ere): Den officielle applikationskode, samt rettelser til den fra Microsoft side ligger i disse to lag. Rettelser kommer typisk som servicepacks eller hotfixes og lægges i .SYP/.C5P.
  • C5UTIL.DIS/.DIP: To ældre fejlrettelseslag, der ikke længere benyttes af Microsoft
  • C5UTIL.BUS/.BUP: To Business Unit lag hvor C5 huse engang kunne lave løsninger til den enkelte brance, så man kunne spare på de individuelle udviklingskoder… Lagene benyttes ikke længere.
  • C5UTIL.CUS/.CUP: To Customer Unit lag hvor C5 huse engang kunne lave løsninger til den enkelte kunde, så man kunne spare på de individuelle udviklingskoder… Lagene benyttes ikke længere.
  • C5UTIL.VAR/.VAP: To Value Added Reseller lag hvor C5 huse kan lave generelle løsninger, som ikke skulle bruge individuelle udviklingskoder…
  • C5UTIL.USR/.USP: To brugerlag hvor C5 huse kan lave specifikke løsninger til den enkelte kunde… Rettelserne kræver udviklingskoder (basis udvikling, forms- og rapportilpasninger)

Bemærk at lagene alle fungerer i par – et hovedlag og et underlag til fejlrettelser til hovedlaget…

 

Har du aldrig hørt om C5UTIL.USP? – jamen den er der – den er bare ikke super godt beskrevet…

 

Når man skal udvikle i VAR/VAP-, BUS/BUP-, CUS/CUP-lagene, så skal C5 i øvrigt startes med -$xxx/yyyyyy hvor xxx er lagets navn og yyyyyy er partneres udviklingskode til det pågældende lag. Udviklingen skal ske i en C5 med partnerens licens – og kunden skal have afviklingskoder for at kunne afvikle fra lagene…

…og det er faktisk også den måde du får liv i C5UTIL.USP-filen på – start C5 med parameteren -$USP (evt. i C5.ini).

 

Fint nok – men hvad hulen skal man bruge det til? Ja, har du RIGTIGT mange tilpasninger og brugere – og løber i 256MB begrænsningen på C5UTIL.USR-filen, ja så er et rimeligt let fix at splitte den op så nogle af tingene i stedet gemmes i C5UTIL.USP-filen – så har du jo 256MB mere at bruge af :-).

 

Det er dog ikke helt så simpelt som det lyder – for først skal du lige have eksporteret dine tilpasninger ud af C5UTIL.USR-filen. Dernæst skal den slettes (C5 laver så selv en ny når den startes) og så skal du indlæse nogle af tilpasningerne igen i den. Resten kan du så – efter at have startet C5 med -$USP – indlæse i C5UTIL.USP (som C5 også selv opretter når den startes med den parameter). Og endelig er folks brugeropsætninger nu nulstillet – så dem må de lave igen forfra…

 

Bemærk: Hvad sker der egentligt hvis en C5UTIL-fil løber fuld? Ja, det er et godt spørgsmål – for vi har faktisk aldrig set så stor en C5UTIL-fil på C5. Men på Microsoft XAL har enkelte oplevet det – og der døde XAL periodisk med et hult drøn (ulovlig handling i Windows). Og som bekendt deler Microsoft XAL og C5 platform/kerner og denne løsning virker derfor både på XAL og C5.