<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Importing Records to a Backup &#8211; Brute Force</title>
	<atom:link href="http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/feed/" rel="self" type="application/rss+xml" />
	<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/</link>
	<description>smart business solutions</description>
	<lastBuildDate>Fri, 18 May 2012 01:30:19 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Dominique</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-1017</link>
		<dc:creator>Dominique</dc:creator>
		<pubDate>Fri, 25 Apr 2008 06:45:25 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-1017</guid>
		<description>Hello,
Thanks for this interesting article. 
I was not able to find the &quot;more surgical technique&quot; on this blog. 
Is it somewhere else or not out yet ?

Thanks anyway for all these usefull and practical blog entries...

Dominique</description>
		<content:encoded><![CDATA[<p>Hello,<br />
Thanks for this interesting article.<br />
I was not able to find the &#8220;more surgical technique&#8221; on this blog.<br />
Is it somewhere else or not out yet ?</p>
<p>Thanks anyway for all these usefull and practical blog entries&#8230;</p>
<p>Dominique</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Head</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-612</link>
		<dc:creator>David Head</dc:creator>
		<pubDate>Thu, 27 Sep 2007 05:59:08 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-612</guid>
		<description>Quite true Jesse. I was not aware that the behaviour had changed so long ago!

I found another interesting thing:

Perform a find in a table
Close the file
Open the file
Same found set

Then:
Omit a couple of records
Close the file
Open the file
Old found set (ignores omits)

Then:
Show All Records
Close the file
Open the file
Old found set

But then sometimes it is inconsistent in this behaviour. I would be interested to know the basis of all this.</description>
		<content:encoded><![CDATA[<p>Quite true Jesse. I was not aware that the behaviour had changed so long ago!</p>
<p>I found another interesting thing:</p>
<p>Perform a find in a table<br />
Close the file<br />
Open the file<br />
Same found set</p>
<p>Then:<br />
Omit a couple of records<br />
Close the file<br />
Open the file<br />
Old found set (ignores omits)</p>
<p>Then:<br />
Show All Records<br />
Close the file<br />
Open the file<br />
Old found set</p>
<p>But then sometimes it is inconsistent in this behaviour. I would be interested to know the basis of all this.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jesse Antunes</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-559</link>
		<dc:creator>Jesse Antunes</dc:creator>
		<pubDate>Tue, 18 Sep 2007 00:09:19 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-559</guid>
		<description>@David - Could you clarify your comment a little bit for me.  I would like to add a note to the post about it but I&#039;m unclear on what specifically you are referring to.  

When a file is closed, it will import all the records in the table in versions 7+ despite there being a found set.  I don&#039;t believe that it is specific to 9.  

I am definitely going to add the not that when a file is closed all records are imported from a table just as a point of interest anyway though.

Thanks again for the comments.  We appreciate all the input.</description>
		<content:encoded><![CDATA[<p>@David &#8211; Could you clarify your comment a little bit for me.  I would like to add a note to the post about it but I&#8217;m unclear on what specifically you are referring to.  </p>
<p>When a file is closed, it will import all the records in the table in versions 7+ despite there being a found set.  I don&#8217;t believe that it is specific to 9.  </p>
<p>I am definitely going to add the not that when a file is closed all records are imported from a table just as a point of interest anyway though.</p>
<p>Thanks again for the comments.  We appreciate all the input.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Head</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-547</link>
		<dc:creator>David Head</dc:creator>
		<pubDate>Sun, 16 Sep 2007 03:08:54 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-547</guid>
		<description>Hi Jesse
You note that &quot;we are using the Show All Records command in the damaged file before importing is because FileMaker only imports records that are in the current found set of the file which is being imported (if it is open)&quot;. 

You correctly note &quot;if it is open&quot; but I think it is important to note explicitly a (welcome) change of behaviour in FileMaker Pro 9 to which you may be alluding. 

If you import from a table in a closed file, even if there is a found set, it will import the total records. Nice!

Conversely, if you DO want to import a limited set of records, you must have the file open to establish the found set.

Cheers, David
uLearnIT</description>
		<content:encoded><![CDATA[<p>Hi Jesse<br />
You note that &#8220;we are using the Show All Records command in the damaged file before importing is because FileMaker only imports records that are in the current found set of the file which is being imported (if it is open)&#8221;. </p>
<p>You correctly note &#8220;if it is open&#8221; but I think it is important to note explicitly a (welcome) change of behaviour in FileMaker Pro 9 to which you may be alluding. </p>
<p>If you import from a table in a closed file, even if there is a found set, it will import the total records. Nice!</p>
<p>Conversely, if you DO want to import a limited set of records, you must have the file open to establish the found set.</p>
<p>Cheers, David<br />
uLearnIT</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jesse Antunes</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-542</link>
		<dc:creator>Jesse Antunes</dc:creator>
		<pubDate>Sat, 15 Sep 2007 09:38:21 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-542</guid>
		<description>@Bob - Wow, That&#039;s a lot to digest.  I think basically what you are trying to say is automate the whole thing.  I think in an ideal world you are 100% correct so I whole heartedly agree with your idea.  I think in practice it is much more likely that no one would maintain such a system because on site personal tend to be.....  errr....  let&#039;s say lax in their development practices.  If you are the sole developer on the solution, you definitely have yourself a golden hammer if you commit yourself to maintain a backup process like this.  

I really like the idea!

Thanks for the input Bob</description>
		<content:encoded><![CDATA[<p>@Bob &#8211; Wow, That&#8217;s a lot to digest.  I think basically what you are trying to say is automate the whole thing.  I think in an ideal world you are 100% correct so I whole heartedly agree with your idea.  I think in practice it is much more likely that no one would maintain such a system because on site personal tend to be&#8230;..  errr&#8230;.  let&#8217;s say lax in their development practices.  If you are the sole developer on the solution, you definitely have yourself a golden hammer if you commit yourself to maintain a backup process like this.  </p>
<p>I really like the idea!</p>
<p>Thanks for the input Bob</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Stuart</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-540</link>
		<dc:creator>Bob Stuart</dc:creator>
		<pubDate>Sat, 15 Sep 2007 08:00:18 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-540</guid>
		<description>It&#039;s probably useful to think of three kinds of situations:

1  In a Separation Model where Minor Upgrades might only involve changes to the Interface file which can be simply swapped out for the new one.

2  Data and Interface Recovery after a severe crash

3  Separation Model or not, Major Upgrades in which aspects of calcs and field definitions have been changed in the new Data file(s). Despite your best intentions, this WILL happen.

In the case of 2 &amp; 3, writing a monster Import script for all your tables may be tedious but it&#039;s also the key to creating a completely automated &#039;Update&#039; routine. This makes it really easy for clients to upgrade to your sparkling new Major Upgrade of your solution, OR recover from a severe crash.

My solution files have an &#039;Upgrade/Recover&#039; button. Eventually, I&#039;ll probably make it inoperative when the file in which it&#039;s used is NOT a Clone. Detecting any data in the tables will &#039;grey it out&#039; because using it when data exists will duplicate some or all records. 

Upgrade/Recover runs a script containing the following steps.

Open (hidden) a selected backup file and store it&#039;s filepath in a global
Run a script called &#039;Prepare For Export&#039; IN THAT FILE
&#039;Prepare For Export&#039; goes to each layout that represents a TO and performs a Show All Records step

When that subscript finishes, the Upgrade/Recover script in the NEW file performs the individual table data imports and is followed by a step that resets serial numbers for each table using &quot;Max ( foreign_auto_num_field ) + 1&quot;. That&#039;s assuming you DO have auto serial number fields to identify records in each table.

After the last subscript performs its Import, the backup file (it&#039;s filepath is stored in a global, remember) is closed and a &quot;Congratulations&quot; dialog appears if no errors were detected.

Close File [ filepath ] 
Go to Layout [ original layout ] 
Refresh Window 
If [ Get ( LastError ) &gt; 0 ] 
Show Custom Dialog [ Title: &quot;Errors Occurred&quot;; Message: &quot;Some errors occurred during the Upgrade process. Please check the 
Import log.&quot;; Buttons: â€œOKâ€ ] 
Else 
Show Custom Dialog [ Title: &quot;Success&quot;; Message: &quot;Congratulations! The Upgrade process was completed successfully.&quot;; Buttons: 
â€œOKâ€ ] 
End If 

Hope I haven&#039;t forgotten anything. Let me know.

Bob Stuart
Think Data Pty Ltd
Noosa
Queensland
Australia</description>
		<content:encoded><![CDATA[<p>It&#8217;s probably useful to think of three kinds of situations:</p>
<p>1  In a Separation Model where Minor Upgrades might only involve changes to the Interface file which can be simply swapped out for the new one.</p>
<p>2  Data and Interface Recovery after a severe crash</p>
<p>3  Separation Model or not, Major Upgrades in which aspects of calcs and field definitions have been changed in the new Data file(s). Despite your best intentions, this WILL happen.</p>
<p>In the case of 2 &amp; 3, writing a monster Import script for all your tables may be tedious but it&#8217;s also the key to creating a completely automated &#8216;Update&#8217; routine. This makes it really easy for clients to upgrade to your sparkling new Major Upgrade of your solution, OR recover from a severe crash.</p>
<p>My solution files have an &#8216;Upgrade/Recover&#8217; button. Eventually, I&#8217;ll probably make it inoperative when the file in which it&#8217;s used is NOT a Clone. Detecting any data in the tables will &#8216;grey it out&#8217; because using it when data exists will duplicate some or all records. </p>
<p>Upgrade/Recover runs a script containing the following steps.</p>
<p>Open (hidden) a selected backup file and store it&#8217;s filepath in a global<br />
Run a script called &#8216;Prepare For Export&#8217; IN THAT FILE<br />
&#8216;Prepare For Export&#8217; goes to each layout that represents a TO and performs a Show All Records step</p>
<p>When that subscript finishes, the Upgrade/Recover script in the NEW file performs the individual table data imports and is followed by a step that resets serial numbers for each table using &#8220;Max ( foreign_auto_num_field ) + 1&#8243;. That&#8217;s assuming you DO have auto serial number fields to identify records in each table.</p>
<p>After the last subscript performs its Import, the backup file (it&#8217;s filepath is stored in a global, remember) is closed and a &#8220;Congratulations&#8221; dialog appears if no errors were detected.</p>
<p>Close File [ filepath ]<br />
Go to Layout [ original layout ]<br />
Refresh Window<br />
If [ Get ( LastError ) &gt; 0 ]<br />
Show Custom Dialog [ Title: "Errors Occurred"; Message: "Some errors occurred during the Upgrade process. Please check the<br />
Import log."; Buttons: â€œOKâ€ ]<br />
Else<br />
Show Custom Dialog [ Title: "Success"; Message: "Congratulations! The Upgrade process was completed successfully."; Buttons:<br />
â€œOKâ€ ]<br />
End If </p>
<p>Hope I haven&#8217;t forgotten anything. Let me know.</p>
<p>Bob Stuart<br />
Think Data Pty Ltd<br />
Noosa<br />
Queensland<br />
Australia</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jesse Antunes</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-536</link>
		<dc:creator>Jesse Antunes</dc:creator>
		<pubDate>Fri, 14 Sep 2007 15:32:12 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-536</guid>
		<description>@jules - Thanks for the comment.  You might be right.  I prefer changing it manually.  if you have multiple tables that you need to update serial numbers, or multiple serial numbers within a table it seems just as difficult to write the script.  Now if you are planning ahead and want to write the script &lt;em&gt;Before&lt;/em&gt; any crashes....  I&#039;m sold.  That&#039;s a great way to do it.</description>
		<content:encoded><![CDATA[<p>@jules &#8211; Thanks for the comment.  You might be right.  I prefer changing it manually.  if you have multiple tables that you need to update serial numbers, or multiple serial numbers within a table it seems just as difficult to write the script.  Now if you are planning ahead and want to write the script <em>Before</em> any crashes&#8230;.  I&#8217;m sold.  That&#8217;s a great way to do it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jules</title>
		<link>http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/comment-page-1/#comment-533</link>
		<dc:creator>jules</dc:creator>
		<pubDate>Fri, 14 Sep 2007 06:15:56 +0000</pubDate>
		<guid isPermaLink="false">http://sixfriedrice.com/wp/importing-records-to-a-backup-brute-force/#comment-533</guid>
		<description>nice description of an onerous task.

though i don&#039;t like manually changing serial numbers.  i think it&#039;d be easier to write a short script using &quot;Set Next Serial Value&quot;</description>
		<content:encoded><![CDATA[<p>nice description of an onerous task.</p>
<p>though i don&#8217;t like manually changing serial numbers.  i think it&#8217;d be easier to write a short script using &#8220;Set Next Serial Value&#8221;</p>
]]></content:encoded>
	</item>
</channel>
</rss>

