Ga naar inhoud
  • 0

FMDefaultFields.xml probleem


andre65

Vraag

Hi

Ik heb een FMDefaultFields.xml file gemaakt om bij een nieuw tabel wat standaard velden aan te maken. Best handig..
Dit werkt, echter..... bij een aantal calculatie velden die met het veld "_ats_create" rekenen, worden deze voorzien van /* (code) */

Het veld "_ats_create" heeft id 3 en de calculatie velden 6 en hoger. Dus "_ats_create" bestaat al wel... die wordt ook netje gevuld !! 
Kom er niet achter waarom dit gebeurd. Zal wel weer iets simpels zijn wat ik zo 1,2,3.. niet zie ;-)

Met vriendelijke groet 

André

363299962_Schermafbeelding2021-05-02om10_31_03.png.36aaea27b8eabcdbc77cb93f19c1ebab.png

 

<Field id="3" name="_ats_create" fieldtype="Normal" datatype="TimeStamp" comment="">
<AutoEnter type="CreationTimestamp" prohibitModification="False"></AutoEnter>
<Validation type="OnlyDuringDataEntry" allowOverride="True" notEmpty="False" unique="False" existing="False"></Validation>
<Storage autoIndex="True" index="None" global="False" maxRepetitions="1"></Storage>
<TagList>#_FMI_0 </TagList>
</Field>

 

<Field id="6" dataType="Number" fieldType="Calculated" name="_cn_aanmaak_jaar" comment="Aanmaak jaar">
<AutoEnter alwaysEvaluate="False">
<Calculated>
<Calculation>
<Text><![CDATA[Year(_ats_create)]]></Text>
</Calculation>
</Calculated>
</AutoEnter>
<Validation type="OnlyDuringDataEntry" allowOverride="True" notEmpty="False" unique="False" existing="False"></Validation>
<Storage storeCalculationResults="True" autoIndex="True" index="None" indexLanguage="Dutch" global="False" maxRepetition="1"></Storage>
<TagList>#_FMI_0 </TagList>
</Field>
Link naar reactie

9 antwoorden op deze vraag

Aanbevolen berichten

  • 0

Ik denk dat dit niet aan jou ligt, want ik krijg exact hetzelfde resultaat als ik FileMaker een xml-bestand laat maken en daarmee een FMDefaultFields.xml maak.

Dit komt er uit "save a copy as xml":

<Field DefaultStyle="" id="8" name="_cn_aanmaak_jaar" fieldtype="Calculated" datatype="Number" comment="Aanmaak jaar">
	<UUID modifications="1" userName="Admin" accountName="Admin" timestamp="2021-05-02T12:05:13">5FBE8BB1-319A-49C8-A2EB-9CD88E60288F</UUID>
	<AutoEnter alwaysEvaluate="True"></AutoEnter>
	<Storage storeCalculationResults="True" autoIndex="True" index="None" global="False" maxRepetitions="1">
		<LanguageReference name="Dutch" id="20"></LanguageReference>
	</Storage>
	<Calculation>
	<TableOccurrenceReference id="1065089" name="Untitled" UUID="245ABE62-1816-4BFF-9C31-AE4150A4B230"></TableOccurrenceReference>
		<Text><![CDATA[Year ( _ats_create )]]></Text>
	</Calculation>
	<TagList>#_FMI_0 </TagList>
</Field>

en dit blijft er over om in het defaults-bestand te zetten:

<Field id="8" name="_cn_aanmaak_jaar" fieldtype="Calculated" datatype="Number" comment="Aanmaak jaar">
	<AutoEnter alwaysEvaluate="True"></AutoEnter>
	<Storage storeCalculationResults="True" autoIndex="True" index="None" global="False" maxRepetitions="1"/>
	<Calculation><Text><![CDATA[Year ( _ats_create )]]></Text></Calculation>
	<TagList>#_FMI_0 </TagList>
</Field>

bij jou staat er dan noig wat vervuiling van gewone tekstvelden, maar dat wordt door FM genegeerd. Ik krijg met deze xml net zoals jij calculatie-formules die zijn uitgecommenteerd. Overigens gebeurt dit bij mij alleen bij velden die referenties naar andere velden gebruiken, calculatie-velden met alleen constanten gaan wél goed.

Link naar reactie
  • 0

Ik vond net nog deze: https://www.dropbox.com/s/n3oqfb480v8w538/DefaultFields.fmp12?dl=0  (via dit artikel: default-fields-xml-generator ) maar deze maakt zo te zien geen calculatievelden. Via het artikel op Claris kan je ook naar een interessant artikel van Mark Baum bij Soliant consulting

Nader bekeken, denk ik dat ze dit bij Claris als een "feature" beschouwen. Dus met opzet calculaties in comments zetten, zodat je ze eerst moet "reviewen" voordat je ze activeert. Maak je een veld met een "auto-enter" met een calculatie, dan gebeurt namelijk hetzelfde:

<Field id="8" name="_aanmaak_jaar" fieldtype="Normal" datatype="Number" comment="Aanmaak jaar">
	<AutoEnter type="Calculated" prohibitModification="True" overwriteExisting="False" alwaysEvaluate="False">
		<Calculated>
			<Calculation>
				<Text><![CDATA[Year ( _ats_aanmaak )]]></Text>
			</Calculation>
		</Calculated>
	</AutoEnter>
	<Validation type="OnlyDuringDataEntry" allowOverride="True" notEmpty="False" unique="False" existing="False"></Validation>
	<Storage autoIndex="True" index="None" global="False" maxRepetitions="1"/>
	<TagList>#_FMI_0 </TagList>
</Field>

 

Link naar reactie
  • 0
34 minuten geleden zei menno:

Nader bekeken, denk ik dat ze dit bij Claris als een "feature" beschouwen. Dus met opzet calculaties in comments zetten, zodat je ze eerst moet "reviewen" voordat je ze activeert. Maak je een veld met een "auto-enter" met een calculatie, dan gebeurt namelijk hetzelfde:

Menno,

Dank je voor de snelle reactie.

Bij het kopiëren van calculatie velden gebeurt dit ook en dat vind ik logisch.... (niet hier ;-) ) 
Het werkt zo fijn in versie 18 en eerder om snel die standaard velden erin te krijgen bij elke tabel.
Dan maar een dummy tabel maken die je snel kan dupliceren. 

André

Link naar reactie
  • 0
3 minuten geleden zei Marsau:

Het  lijkt mij dat het gebruiken van veld verwijzingen in calculaties op dit niveau sowieso problematisch is. Kennelijk gaat dat mis, maar het is in het voorbeeld ook volstrekt onnodig. 
 

waarom niet direct:

Year ( get ( CurrentDate )) ?
 

:D.... waarom ben ik daar niet opgekomen !!

Thanks Marsau

 

Link naar reactie
  • 0

Kan het niet zijn dat de referenties naar de calculatievelden gewoon nog niet bestaan? Met andere woorden hij ziet helemaal (nog) niet dat de andere velden er al zijn en maakt er daarom een comment van, net als hij zou doen wanneer je een calculatieveld plakt met referenties naar onbekende velden.

Link naar reactie
  • 0
49 minuten geleden zei bigbadwolf:

Kan het niet zijn dat de referenties naar de calculatievelden gewoon nog niet bestaan? Met andere woorden hij ziet helemaal (nog) niet dat de andere velden er al zijn en maakt er daarom een comment van, net als hij zou doen wanneer je een calculatieveld plakt met referenties naar onbekende velden.

Niet helemaal mee eens.. In FM 18 en eerder werkte dit wel.
Moest je natuurlijk wel de _ats_create veld boven de calculatie plaatsen (die faut al eens gemaakt ;-) )

Link naar reactie

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...