<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="https://www.schweda.net/style_feed.css" ?>
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
    xmlns:atom="http://www.w3.org/2005/Atom"	
	xmlns:dc="http://purl.org/dc/elements/1.1/" > 
<channel>
    <title>schweda.net - Blog</title>
    <link>https://www.schweda.net/</link>
    <description>schweda.net - Blog - Blog-Beitraege</description>
    <language>de-at</language>
    <copyright>Copyright 2006-2026</copyright>
    <generator>schweda.net</generator>
    <managingEditor>heinz.schweda@schweda.net (Heinz Schweda)</managingEditor>
    <webMaster>heinz.schweda@schweda.net (Heinz Schweda)</webMaster>
    <category>Blog</category>
	<atom:link href="https://www.schweda.net/blog_rss.php?bid=406" rel="self" type="application/rss+xml" />
<item>
<title><![CDATA[AX 2012: ValidTimeState]]></title>
<description><![CDATA[
<p>Wer schon einmal eine Tabelle aufbauen musste, wo die einzelnen Datens&auml;tze &uuml;ber Datumsfelder nur f&uuml;r einen bestimmten Zeitraum g&uuml;ltig sind - &auml;hnlich den Handelsvereinbarungen -, wei&szlig; wieviel Entwicklungsaufwand daintersteckt, wenn sichergestellt werden muss, da&szlig; sich die G&uuml;ltigkeitsbereiche der einzelnen Datens&auml;tze nicht &uuml;berschneiden.
</p>


<p>Dynamics AX 2012 stellt hierf&uuml;r eine neue Tabelleneigenschaft <strong>validTimeStateFieldType </strong>zur Verf&uuml;gung, mit deren Hilfe sich Dynamics AX selbst um vieles k&uuml;mmert.
</p>


<p>Beim Anlegen einer solchen Tabelle muss nur auf die folgenden Punkte geachtet werden:
</p>


<ol>
	
<li>Eigenschaft <strong>ValidTimeStateFieldType </strong>der Tabelle auf <em>Date </em>oder <em>UtcDateTime </em>setzen. Dadurch erstellt AX zwei neue Felder <em>ValidFrom </em>und <em>ValidTo </em>in der Tabelle.<br />
	<br />
	<img alt="" src="http://www.schweda.net/pictures/blogpics/ax2012_validtimestate_tableproperties.jpg" style="height:53px; width:321px" /><br />
	&nbsp;
</li>
	
<li>Man muss einen eindeutigen Index erstellen, der die entscheidenden Felder der Tabelle sowie die Felder <em>ValidFrom </em>und<em> ValidTo </em>enth&auml;lt.<br />
	<br />
	<img alt="" src="http://www.schweda.net/pictures/blogpics/ax2012_validtimestate_table.jpg" style="height:309px; width:342px" /><br />
	&nbsp;
</li>
	
<li>Bei diesem Index m&uuml;ssen bestimmte Eigenschaften gesetzt werden.<br />
	<br />
	<img alt="" src="http://www.schweda.net/pictures/blogpics/ax2012_validtimestate_indexproperties.jpg" style="height:213px; width:247px" />
</li>

</ol>


<p>&nbsp;
</p>


<p>Ab diesem Zeitpunkt k&uuml;mmert sich Dynamics AX vollst&auml;ndig um das Aktualisieren von nicht mehr g&uuml;ltigen Datens&auml;tzen und die entscheidenden Pr&uuml;fungen beim Anlegen von neuen Datens&auml;tzen.
</p>


<p>Aber auch das Selektieren des jeweils g&uuml;ltigen Datensatzes f&uuml;r ein bestimmtes Datum wird wesentlich erleichert. Daf&uuml;r stellt Dynamics AX das Keyword <strong>validTimeState </strong>zur Verf&uuml;gung.
</p>


<div class="div_blog_axcode">static void AX2012_ValidTimeStateUtcDateTime(Args _args)<br />
{<br />
&nbsp;&nbsp;&nbsp; AX2012_ValidTimeStateUtcDateTime AX2012_ValidTimeStateUtcDateTime;<br />
&nbsp;&nbsp;&nbsp; utcDateTime myUtcDateTime = 1988-07-20T13:34:45;<br />
&nbsp;&nbsp;&nbsp; ;<br />
&nbsp;&nbsp;&nbsp; select validTimeState(myUtcDateTime) *<br />
&nbsp; &nbsp;&nbsp;from AX2012_ValidTimeStateUtcDateTime;<br />
<br />
&nbsp;&nbsp;&nbsp; info(strFmt(&quot;%1&quot;, AX2012_ValidTimeStateUtcDateTime.salesPrice));<br />
}
</div>


<p>&nbsp;
</p>]]></description>
<category>Microsoft Dynamics AX (Axapta)</category>
<pubDate>Fri, 27 May 2011 18:08:00 +0200</pubDate>
<link>https://www.schweda.net/blog_ax.php?bid=406</link>
<comments>https://www.schweda.net/blog_ax.php?bid=406</comments>
<guid isPermaLink="true">https://www.schweda.net/blog_ax.php?bid=406</guid>
<author>heinz.schweda@schweda.net (Heinz Schweda)</author>
<wfw:commentRss>https://www.schweda.net/blog_ax.php?bid=406</wfw:commentRss>
</item>
</channel>
</rss>	
