<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>foxpro &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/foxpro/</link>
	<description>Feed of posts on WordPress.com tagged "foxpro"</description>
	<pubDate>Tue, 01 Dec 2009 14:43:52 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[DBGetProp fails (VFP 9.0)]]></title>
<link>http://nancyfolsom.wordpress.com/2009/11/10/dbgetprop-fails-vfp-9-0/</link>
<pubDate>Tue, 10 Nov 2009 04:48:56 +0000</pubDate>
<dc:creator>Nancy</dc:creator>
<guid>http://nancyfolsom.wordpress.com/2009/11/10/dbgetprop-fails-vfp-9-0/</guid>
<description><![CDATA[Ugh. Ever have DbGetProp( cViewName, &#8220;VIEW&#8221;, &#8220;TABLES&#8221;) return an empty strin]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Ugh. Ever have DbGetProp( cViewName, &#8220;VIEW&#8221;, &#8220;TABLES&#8221;) return an empty string? Yes, the view is really a view, in the current database. Works perfectly fine in every regard. (It&#8217;s a very simple query that selects the year of a date field, and groups by it.) One table. One field. Weird. Took out the year function, and the DbGetProp still returned blank.</p>
<p>Rebuilding the view fixed it. But, um, what the <em>hell</em>?</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[NoData, requery, and views of views (VFP-to-SQL Server)]]></title>
<link>http://nancyfolsom.wordpress.com/2009/11/02/nodata-requery-and-views-of-views-vfp/</link>
<pubDate>Mon, 02 Nov 2009 23:29:35 +0000</pubDate>
<dc:creator>Nancy</dc:creator>
<guid>http://nancyfolsom.wordpress.com/2009/11/02/nodata-requery-and-views-of-views-vfp/</guid>
<description><![CDATA[I&#8217;m working on a project converting a client&#8217;s VFP 9 data to SQL Server. The VFP app use]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I&#8217;m working on a project converting a client&#8217;s VFP 9 data to SQL Server. The VFP app uses local views (via data objects) that use native VFP data and local views. Swapping the native VFP data for SQL Server data isn&#8217;t as simple as redirecting a view from a DBF to a remote view. I should have realized this since, as I well know, VFP doesn&#8217;t automatically requery underlying views.</p>
<p>Say I have a view on a People table that selects the last name&#8211;call it lv_PeopleByLastName. It&#8217;s trivial to redirect the view to query remote data instead of local data. But if I then use lv_PeopleByLastName with NODATA, the remote view is also opened NODATA. That makes sense. The gotcha is that requering lv_PeopleByLastName does not also requery the remote view. So, even after Requery() the local view will still be empty since the remote view is empty. One must requery the remote view, then the local view.</p>
<p>IOW, once open every data source operates independently. VFP doesn&#8217;t automagically maintain dependency info about an open datasource (except through the database container, of course).</p>
<p>This should not have surprised me. It&#8217;s not fatal, just a complication I should have foreseen. So, I can&#8217;t simply redirect a view from local data to a remote view without changing either the views or the way dataobjects manage requerying.</p>
<p>Here are my options as best I can tell:</p>
<ol>
<li>Change the views so they don&#8217;t use other views. To be frank, SQL syntax and I are not BFFs. I&#8217;d rather stick a fork through my hand than work as a database manager. SQL feels like one is writing entire programs in a single line of code&#8211;the antithesis of maintainability. So, I like SQL streamlined as much as possible. Luckily most queries are fairly straightforward.</li>
<li>I could rework the data objects and the views so that data objects cascade other data objects representing underlying views that would be requeried whenever the parent object is requeried. Okay, I confess. I just threw that in there because options should always come in threes.</li>
<li>The data objects could make note of what underlying views are involved and requery them when the object is requeried. That works. It&#8217;s not elegant, but it is effective, and considering the bottle neck is generally fetching remote data, doesn&#8217;t add significant processing time. However, if more than view uses the same underlying data, it could make for some unnecessary requerying.</li>
</ol>
<p>It looks like option 1, with option 3 held in reserve. Which I could have had done by now instead of posting. But I&#8217;ll call this organizing my thoughts rather than procrastinating on the inevitable.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[HTML Ipsum Presents]]></title>
<link>http://betageekers.wordpress.com/2009/10/16/html-ipsum-presents/</link>
<pubDate>Fri, 16 Oct 2009 01:35:46 +0000</pubDate>
<dc:creator>janhell</dc:creator>
<guid>http://betageekers.wordpress.com/2009/10/16/html-ipsum-presents/</guid>
<description><![CDATA[Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestib]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Looking to bookmark existing PDF, programmatically]]></title>
<link>http://nancyfolsom.wordpress.com/2009/10/13/looking-to-bookmark-existing-pdf-programmatically/</link>
<pubDate>Tue, 13 Oct 2009 22:16:38 +0000</pubDate>
<dc:creator>Nancy</dc:creator>
<guid>http://nancyfolsom.wordpress.com/2009/10/13/looking-to-bookmark-existing-pdf-programmatically/</guid>
<description><![CDATA[I&#8217;ve used Ghostscript for some time to programmatically create and merge PDFs from Visual FoxP]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I&#8217;ve used Ghostscript for some time to programmatically create and merge PDFs from Visual FoxPro. I&#8217;ve never been able to suss out how  to add bookmarks to an existing PDF document, and I&#8217;ve come to believe it&#8217;s not supported.</p>
<p>There are code solutions around, naturally, but so far I haven&#8217;t found a solution for automating it within VFP.  There are libraries, but not all libraries play nicely with VFP. It might be possible, but most are overkill also, since I don&#8217;t need a library full of functions. Just this one function.</p>
<p>Do I have to bite the bullet?</p>
<p><em>Cue tumbleweeds crossing in foreground of dust western ghost town.</em></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[test2]]></title>
<link>http://klikamuka.wordpress.com/2009/10/06/test2/</link>
<pubDate>Tue, 06 Oct 2009 08:05:23 +0000</pubDate>
<dc:creator>klikamuka</dc:creator>
<guid>http://klikamuka.wordpress.com/2009/10/06/test2/</guid>
<description><![CDATA[dsfdfdfsdff]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>dsfdfdfsdff</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Welcome To Expert-Foxpro-Programmers!]]></title>
<link>http://expertfoxproprogrammers.wordpress.com/2009/09/30/welcome-to-expert-foxpro-programmers/</link>
<pubDate>Wed, 30 Sep 2009 18:10:42 +0000</pubDate>
<dc:creator>expertfoxproprogrammers</dc:creator>
<guid>http://expertfoxproprogrammers.wordpress.com/2009/09/30/welcome-to-expert-foxpro-programmers/</guid>
<description><![CDATA[This is the first blog post. This blog has been setup to complement http://www.expert-foxpro-program]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>This is the first blog post. This blog has been setup to complement http://www.expert-foxpro-programmers.com</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Visual FoxPro - Sedna ]]></title>
<link>http://azizchamas.wordpress.com/2009/08/31/visual-foxpro-sedna/</link>
<pubDate>Mon, 31 Aug 2009 20:33:09 +0000</pubDate>
<dc:creator>zuzu64</dc:creator>
<guid>http://azizchamas.wordpress.com/2009/08/31/visual-foxpro-sedna/</guid>
<description><![CDATA[che futuro avrà Foxpro? Microsoft continuerà a sostenere Sedna?]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>che futuro avrà Foxpro? Microsoft continuerà a sostenere Sedna?</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Prepare USB printer for print through DOS based program like FoxPro]]></title>
<link>http://shkhan.wordpress.com/2009/08/26/print-from-dos/</link>
<pubDate>Wed, 26 Aug 2009 06:58:57 +0000</pubDate>
<dc:creator>shkhan</dc:creator>
<guid>http://shkhan.wordpress.com/2009/08/26/print-from-dos/</guid>
<description><![CDATA[DOS based applications like FoxPro doesn’t detect an USB printer. One way of directing output to USB]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>DOS based applications like FoxPro doesn’t detect an USB printer. One way of directing output to USB is by using “net use” at command line</p>
<p>We will use a little trick to work out. We fist share our printer with a share name within 8 digit name. Cause DOS didn’t support more then 8 characters. Then we will use above command. But we need to ensure that we will use text print only.</p>
<p>Now follow these instructions…</p>
<ul>
<li> Share your USB printer and give its name at printer share name</li>
<li> Open the printer properties, select ADVANCE tab select “Print Processor” select TEXT and save the change</li>
<li> Now use “net use” command<br />
<strong>e.g.</strong> NET USE LPT1 \\<span style="color:#c0c0c0;">&#60;computer name&#62;</span>\<span style="color:#c0c0c0;">&#60;printer share name&#62;</span> /persistent:yes</li>
</ul>
<p>At the command prompt type “DIR &#62;PRN” this must give you print from USB printer, then try printing from your application.</p>
<p>That&#8217;s all folk. Now you can write a small batch file to active the printer every time before you go to FoxPro or any other DOS program</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[GetShortPathName...again]]></title>
<link>http://nancyfolsom.wordpress.com/2009/06/29/getshortpathname-again/</link>
<pubDate>Mon, 29 Jun 2009 20:41:12 +0000</pubDate>
<dc:creator>Nancy</dc:creator>
<guid>http://nancyfolsom.wordpress.com/2009/06/29/getshortpathname-again/</guid>
<description><![CDATA[Man, I hate it when I can&#8217;t find old code to reuse. Maybe if I post it here I&#8217;ll at leas]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Man, I hate it when I can&#8217;t find old code to reuse. Maybe if I post it here I&#8217;ll at least be able to find it next time it&#8217;s wanted. *Heavy, theatrical, sigh*</p>
<p><em>Edited to add a bit more info.</em></p>
<p>I&#8217;ve gotten far too use to the casual, sloppy, chatty style of Facebook, I guess.</p>
<p>I&#8217;m writing code, in VFP, that will iterate through directories, collect all PDFs, and merge them using GhostScript. I want the full path and file names for one purpose, but Ghostscript seems to require short file names. At least so far as I can tell it stumbles with file names delimited with quotes. So, in short, I need both short and long paths, and I can iterate using native VFP functions with either long <em>or </em>short paths, but not both. Hence, my desire to collect long filenames, but convert to short paths to pass to GhostScript.</p>
<pre><span style="color:green;">* Example</span>
?GetShortPathName_VFP( <span style="color:blue;">GetFile</span>() )

<span style="color:blue;">Function</span> GetShortPathName_VFP (tcLongName)

	<span style="color:blue;">Assert</span> <span style="color:blue;">Vartype</span>( tcLongName ) = <span style="color:red;">"C"</span> ;
		<span style="color:blue;">Message</span> <span style="color:red;">"Did you mean to pass a bad parameter to "</span> + ;
		<span style="color:blue;">Program</span>( <span style="color:blue;">Program</span>(-<span style="color:red;">1</span>) -<span style="color:red;">1</span> ) + <span style="color:red;">"?"</span>

	<span style="color:blue;">Local</span> lcFName, lnFName

	DeclareDlls_gspn()

	lcFName = <span style="color:blue;">Space</span>(<span style="color:red;">255</span>)

	lnFName = GetShortPathName( tcLongName, @lcFName, <span style="color:red;">255</span>)

	ClearDlls_gspn()

	<span style="color:blue;">Assert</span> lnFName &#62; <span style="color:red;">0</span> <span style="color:blue;">Message</span> <span style="color:blue;">Program</span>() + <span style="color:red;">" failed."</span>

	<span style="color:blue;">Return</span> <span style="color:blue;">Left</span>( lcFName, lnFName )

<span style="color:blue;">Endfunc</span>

<span style="color:blue;">Function</span> DeclareDlls_gspn
	<span style="color:blue;">Declare</span> <span style="color:blue;">Integer</span> GetShortPathName <span style="color:blue;">In</span> Win32API <span style="color:blue;">As</span> ;
	GetShortPathName <span style="color:blue;">String</span>, <span style="color:blue;">String</span>, <span style="color:blue;">Integer</span>
	<span style="color:blue;">Return</span>
<span style="color:blue;">Endfunc</span>

<span style="color:blue;">Function</span> ClearDlls_gspn
	<span style="color:blue;">Clear</span> <span style="color:blue;">Dlls</span> <span style="color:red;">"GetShortPathName"</span>
	<span style="color:blue;">Return</span>
<span style="color:blue;">Endfunc</span></pre>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Visual Fox Pro 9 Portable]]></title>
<link>http://grupoiv.wordpress.com/2009/06/10/visual-fox-pro-9-portable/</link>
<pubDate>Wed, 10 Jun 2009 06:00:00 +0000</pubDate>
<dc:creator>Crystaldream</dc:creator>
<guid>http://grupoiv.wordpress.com/2009/06/10/visual-fox-pro-9-portable/</guid>
<description><![CDATA[Lo subí porque el julio me pregunto si tenia el Visual Foxpro 9 y le dije que solo en portable así q]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Lo subí porque el julio me pregunto si tenia el Visual Foxpro 9 y le dije que solo en portable así que me dijo que lo subiera aquí y como me parece buena idea, pues:</p>
<p><a href="http://www.mediafire.com/?gdmymgzzxjk" target="_blank"><img title="foxyportable" style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" height="300" alt="foxyportable" src="http://grupoiv.files.wordpress.com/2009/06/foxyportable.jpg?w=327&#038;h=300" width="327" border="0" /></a> </p>
<p><a title="http://www.mediafire.com/?gdmymgzzxjk" href="http://www.mediafire.com/?gdmymgzzxjk">http://www.mediafire.com/?gdmymgzzxjk</a></p>
<p>y si no sabes leer te va de nuevo:</p>
<p><a title="http://www.mediafire.com/?gdmymgzzxjk" href="http://www.mediafire.com/?gdmymgzzxjk">http://www.mediafire.com/?gdmymgzzxjk</a></p>
<p>y si definitivamente eres un indio por tercera vez lo repito:</p>
<p><a title="http://www.mediafire.com/?gdmymgzzxjk" href="http://www.mediafire.com/?gdmymgzzxjk">http://www.mediafire.com/?gdmymgzzxjk</a></p>
<p>Adiós y saludos.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Multi-User FoxPro with Linux+Dosemu+CIFS]]></title>
<link>http://anezch.wordpress.com/2009/06/09/multi-user-foxpro-with-linuxdosemucifs/</link>
<pubDate>Tue, 09 Jun 2009 02:28:41 +0000</pubDate>
<dc:creator>anezch</dc:creator>
<guid>http://anezch.wordpress.com/2009/06/09/multi-user-foxpro-with-linuxdosemucifs/</guid>
<description><![CDATA[Saya menemukan masih ada beberapa kantor yang menjalankan aplikasi yang ditulis dengan FoxPro. Seper]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Saya menemukan masih ada beberapa kantor yang menjalankan aplikasi yang ditulis dengan FoxPro. Seperti yang saya alami di kantor saya, kami bahkan masih men-develop beberapa project baru dengan FoxPro, sambil menunggu project migrasi ke Java selesai.</p>
<p>Saat perusahaan kami memutuskan untuk beralih ke Linux, kami pun ditantang untuk dapat menjalankan FoxPro di Linux. Hal yang cukup mudah dilakukan karena adanya Dosemu. Solusi yang dulu kami gunakan yaitu:<br />
1. Data disimpan di satu komputer Linux yang dipasang Samba Server.<br />
2. Pada client diinstall:<br />
    a. Dosemu.<br />
    b. Samba Client.<br />
3. Di Dosemu di-install FoxPro.<br />
4. Client me-mount data dari server dengan samba:</p>
<pre>mount -t smbfs -o rw,username=blabla,password=blabla,uid=1000,gid=1000 //dbfserver/datadir /mnt/datadbf</pre>
<p>5. Di autoexec.bat (/home/user/.dosemu/drive_c/autoexec.bat) di line paling akhir, ditambahkan:<br />
    <code>lredir d: linux\fs/mnt/datadbf</code><br />
    Sehingga data di server kita akses di dosemu dan foxpro sebagai drive D:</p>
<p>Dengan 1-2 user, konfigurasi ini berjalan dengan mulus. Sampai pada suatu saat terjadi masalah, yaitu index file tidak terupdate dengan benar saat menambahkan record baru. Selain itu muncul juga masalah lain, yaitu update yang dilakukan di satu komputer, tidak terlihat di komputer lain. Hal ini mengindikasikan bahwa 1 file DBF tidak dapat dibuka, apalagi di-update oleh 2 client secara bersamaan. Sehingga, kami terpaksa bekerja secara bergantian.</p>
<p><strong>FIX-1 : veto oplock</strong></p>
<p>Protokol file-sharing di Window$ menggunakan mekanisme locking terhadap file yang sebetulnya lebih mengarah ke &#8216;caching&#8217;, dan Samba mencoba mengikuti standar ini. Artinya secara default, Samba melakukkan caching terhadap file. Ini bukanlah hal yang kita inginkan, sebab dapat mengacaukan program FoxPro.</p>
<p>Jadi, perbaikannya adalah dengan men-disable fitur ini untuk file-file database dan index FoxPro. Tambahkan settingan global ini di /etc/samba/smb.conf :</p>
<p><code>veto oplock files = /*.dbf/*.DBF/*.idx/*.IDX/*.cdx/*.CDX/*.fpt/*.FPT/</code></p>
<p>Dengan setting tersebut, sistem pun pulih, untuk sementara. Kemudian terjadi lagi masalah di mana terkadang update oleh satu User tertimpa oleh update User lain. Hal ini dapat disebut sebagai racing condition, yang kembali mengancam integritas data.</p>
<p><strong>FIX-2 : locking dengan flock()</strong></p>
<p>Setelah membaca dokumentasi di FoxPro, saya menemukan bahwa seharusnya program yang dijalankan secara multi-user menggunakan mekanisme locking agar integritas database dapat terjaga. Penggunaan &#8220;set exclusive&#8221; saja ternyata tidak cukup, maka program pun dirubah dengan menambahkan locking kapanpun akses kritis terhadap database diperlukan.</p>
<p>Anehnya, ternyata locking tidak bekerja, apabila satu user sedang me-lock suatu file, user lain masih dapat me-locknya juga. Jangankan locking dengan flock(), ternyata &#8220;set exclusive&#8217; pun tidak bekerja.</p>
<p><strong>FIX-3 : CIFS</strong></p>
<p>Setelah riset dengan mencari sumber di Internet, saya menemukan bahwa SMBFS sudah mulai ditinggalkan karena beberapa bug, dan disebutkan juga bahwa file-locking tidak bekerja di SMBFS. Disarankan untuk beralih ke CIFS, saya pun kemudian melakukan test dengan CIFS ini. Hasilnya, ternyata benar file locking dapat bekerja dengan sempurna.</p>
<p>Command untuk mounting berubah menjadi:<br />
<code>mount -t cifs -o rw,user=blabla,password=blabla,uid=1000,gid=1000,noperms //dbfserver/datadir /mnt/datadbf</code></p>
<p>Program pun dijalankan lagi dan untuk beberapa waktu dapat berjalan dengan baik. Tampaknya permasalahan belumlah selesai, beberapa kali terjadi kehilangan data. Data yang sudah di-update oleh user, ternyata tidak tersimpan di database.</p>
<p><strong>FIX-5 : nounix and directio</strong></p>
<p>Ternyata meskipun locking dapat bekerja dengan baik, update oleh satu user, tidak dapat dilihat secara langsung oleh user lain. Apabila satu file DBF dibuka secara bersamaan oleh lebih dari satu user, pada saat satu user melakukan perubahan, user lain tidak dapat melihatnya secara langsung. User lain haruslah menutup file DBF tersebut dan membuka nya kembali, barulah update dapat terlihat.</p>
<p>Cara ini tentu tidak nyaman dan menurunkan produktifitas user. Apalagi kami mengalami lonjakan jumlah pengguna program FoxPro ini, dari semula hanya 2 user, hingga saat ini ada hampir 20 user.</p>
<p>Setelah searching di internet, akhirnya saya menemukan kunci dari permasalahan ini, yaitu dengan menambahkan option pada command untuk mounting data.</p>
<p>mount -t cifs -o rw,user=blabla,password=blabla,uid=1000,gid=1000,noperms,nounix,directio</p>
<p>Options nounix dan directio ternyata memecahkan masalah dengan CIFS.</p>
<p><strong>Kesimpulan:</strong></p>
<p>Agar sebuah program FoxPro dapat dijalankan secara multi-user dengan skema Linux+Dosemu+CIFS, ada beberapa &#8220;tuning&#8221; yang harus kita lakukan dalam sistem. Di antaranya:<br />
1. Menambahkan option <code>veto oplock files</code> terhadap file-file yang berkaitan dengan FoxPro di konfigurasi server Samba.<br />
2. Menggunakan CIFS untuk mounting direktori data, bukan SMBFS.<br />
3. Options mounting dengan CIFS yang digunakan: noperms,nounix,directio<br />
3. Menyesuaikan program, agar melakukan locking saat mengakses data yang akan dirubah.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SMBFS vs CIFS -- Part 2]]></title>
<link>http://anezch.wordpress.com/2009/06/09/smbfs-vs-cifs-part-2/</link>
<pubDate>Tue, 09 Jun 2009 01:29:32 +0000</pubDate>
<dc:creator>anezch</dc:creator>
<guid>http://anezch.wordpress.com/2009/06/09/smbfs-vs-cifs-part-2/</guid>
<description><![CDATA[Post ini merupakan lanjutan dari post SMBFS vs CIFS. Setelah saya melakukan investigasi lebih lanjut]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Post ini merupakan lanjutan dari post <a title="SMBFS vs CIFS" href="http://anezch.wordpress.com/2009/04/15/smbfs-vs-cifs/">SMBFS vs CIFS</a>. Setelah saya melakukan investigasi lebih lanjut, saya menemukan hasil yang berbeda dengan yang sebelumnya saya dapatkan. Which is, cukup aneh, dan membuat saya sangat heran. Padahal metode test yang saya lakukan masih sama.</p>
<p>Untuk itu, saya merasa perlu menerangkan secara singkat prosedur test yang saya lakukan:<br />
1. User1 dan User2 adalah 2 (dua) komputer yang berbeda.<br />
2. Mounting dengan CIFS di User1 dan User2.<br />
3. Dibuat satu file DBF untuk ekperimen, kita sebut file tersebut test.dbf.<br />
4. User1 flock() file test.dbf.<br />
5. User2 flock() file test.dbf juga. User2 harusnya diblok dengan pesan &#8216;Attempting to lock&#8230;&#8217;<br />
6. User1 update record.<br />
7. User1 unlock file test.dbf.<br />
8. Pada saat yang sama User2 seharusnya keluar dari blok, dan me-lock file test.dbf.<br />
9. User1 dan User2 cek isi record, apakah sudah terlihat hasil update User1 di langkah 6.<br />
10. User2 update record.<br />
11. User2 unlock file test.dbf<br />
12. User1 dan User2 cek isi record, apakah sudah terlihat hasil update User2 di langkah 10.<br />
13. User1 flock() file test.dbf.<br />
14. User1 dan User2 cek isi record, bandingkan dengan hasil di langkah 12.</p>
<p>Hasil yang sudah saya dapatkan sebelumnya menunjukkan bahwa dengan CIFS kita dapat me-lock suatu file DBF di FoxPro, namun update oleh satu user tidak dapat dilihat oleh user lain sekalipun file sudah di-lock. Dengan membuka ulang file DBF-nya dengan &#8220;use&#8221;, barulah perubahan tersebut dapat kita lihat. Terlepas dari apakah kita me-lock file-nya atau tidak.</p>
<p>Hasil test terbaru yang saya lakukan, menyimpulkan bahwa dengan locking, update bisa terlihat secara langsung, tanpa perlu membuka ulang DBF dengan use. Kemungkinan perubahan ini diakibatkan oleh mount options yang berbeda. Kebetulan saya mendapatkan informasi dari arsip suatu milis yang saya lupa namanya. Dengan menambahkan <strong>nounix</strong> dan <strong>directio</strong> sebagai mount options, sepertinya membuat perbedaan antara hasil test pertama dengan hasil test kedua.</p>
<p>Namun, syarat agar perubahan tersebut dapat dilihat secara langsung oleh user lain, ada 2 cara:<br />
1. Dengan &#8216;go top&#8217; dahulu kemudian &#8216;goto&#8217; record yang dimaksud. Atau dengan kata lain, kita pindah ke record yang lain dahulu kemudian kembali ke record yang semula. Update dapat dilihat.<br />
2. Dengan mekanisme locking dengan flock() seperti langkah-langkah test yang saya sebutkan di atas.</p>
<p>Cara yang terbaik tentu saja dengan mekanisme locking dengan flock(), sesuai anjuran FoxPro di Help page nya.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[El trabajo que no pudieron hacer de FoxPro Varios]]></title>
<link>http://grupoiv.wordpress.com/2009/06/04/el-trabajo-que-no-pudieron-hacer-de-foxpro-varios/</link>
<pubDate>Thu, 04 Jun 2009 18:34:00 +0000</pubDate>
<dc:creator>Crystaldream</dc:creator>
<guid>http://grupoiv.wordpress.com/2009/06/04/el-trabajo-que-no-pudieron-hacer-de-foxpro-varios/</guid>
<description><![CDATA[Pues aquí les pongo los dos programas que hicimos ayer Miércoles que muchos no pudieron hacer por in]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Pues aquí les pongo los dos programas que hicimos ayer Miércoles que muchos no pudieron hacer por indios, o por otra razón extraña.</p>
<p><a href="http://grupoiv.files.wordpress.com/2009/06/resendizconsulta.jpg"><img title="resendizconsulta" style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" height="241" alt="resendizconsulta" src="http://grupoiv.files.wordpress.com/2009/06/resendizconsulta_thumb.jpg?w=488&#038;h=241" width="488" border="0" /></a> </p>
<p><a href="http://www.box.net/shared/3eijh8i6qh" target="_blank"><img title="descargar" style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" height="60" alt="descargar" src="http://grupoiv.files.wordpress.com/2009/06/descargar.png?w=237&#038;h=60" width="237" border="0" /></a> </p>
</p>
<p>Cualquier duda me dejan un comentario. Pondré mas información llegando de la escuela.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[El Programin de Resendiz]]></title>
<link>http://grupoiv.wordpress.com/2009/05/28/el-programin-de-resendiz/</link>
<pubDate>Thu, 28 May 2009 06:01:00 +0000</pubDate>
<dc:creator>Crystaldream</dc:creator>
<guid>http://grupoiv.wordpress.com/2009/05/28/el-programin-de-resendiz/</guid>
<description><![CDATA[Solo para fines educativos bola de plagiadores compulsivos, entiendo que les dio chance para entrega]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Solo para fines educativos bola de plagiadores compulsivos, entiendo que les dio chance para entregarlo mañana asi que si su cabeza es tan vaga para no entender ni puta madre de como hacerlo, te doy permiso de checar mi codigo.</p>
<p><img title="foxpro2009tarea" style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" height="334" alt="foxpro2009tarea" src="http://grupoiv.files.wordpress.com/2009/05/foxpro2009tarea.jpg?w=455&#038;h=334" width="455" border="0" /> </p>
<p><a href="http://www.box.net/shared/3l2hgajyl1" target="_blank"><img title="descargar" style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" height="60" alt="descargar" src="http://grupoiv.files.wordpress.com/2009/05/descargar1.png?w=237&#038;h=60" width="237" border="0" /></a> </p>
<p>1- Dale click al botoncito de arriba</p>
<p>2- Da clic al boton que te salga en esa pagina</p>
<p>3- Una vez bajado el .zip, descomprimelo en donde quieras</p>
<p>4- Son muchos archivos lo se pero abre pr.prg y si quieres ver el codigo solo escribes modi comm pr, modi comm reportes, modi comm listado, modi comm listado2 y saldra los codigos de esos programas. Si no se ve o no sale escribes en los comandos “Set directory to (ruta donde hayas descomprimido los archivos)” y si no pues nimodo, me pides los codigos por correo a <a href="mailto:felipollito2@gmail.com">felipollito2@gmail.com</a>.</p>
<p>5- Jodete ! y suerte… y …. Vuelvete a JODER!</p>
<p><a href="http://grupoiv.files.wordpress.com/2009/05/fox.jpg"><img title="fox" style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" height="208" alt="fox" src="http://grupoiv.files.wordpress.com/2009/05/fox_thumb.jpg?w=312&#038;h=208" width="312" border="0" /></a> </p>
<p>Este comercial es traido a ti por Fox Pro y Jotendiz</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[FoxPro Developers - Perm positions]]></title>
<link>http://edbales.wordpress.com/2009/05/04/foxpro-developers-perm-positions/</link>
<pubDate>Mon, 04 May 2009 19:02:22 +0000</pubDate>
<dc:creator>edbales</dc:creator>
<guid>http://edbales.wordpress.com/2009/05/04/foxpro-developers-perm-positions/</guid>
<description><![CDATA[Several needs for strong Visual FoxPro Developers. High Point, NC location. Perm (employee status)]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Several needs for strong Visual FoxPro Developers.  High Point, NC location.  Perm (employee status)&#8230; NOT contract.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SMBFS vs CIFS]]></title>
<link>http://anezch.wordpress.com/2009/04/15/smbfs-vs-cifs/</link>
<pubDate>Wed, 15 Apr 2009 00:31:33 +0000</pubDate>
<dc:creator>anezch</dc:creator>
<guid>http://anezch.wordpress.com/2009/04/15/smbfs-vs-cifs/</guid>
<description><![CDATA[Beberapa tahun yang lalu, diperkenalkan CIFS (Common Internet File System) di Linux sebagai penggant]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Beberapa tahun yang lalu, diperkenalkan CIFS (Common Internet File System) di Linux sebagai pengganti SMBFS (Samba File System). Awalnya saya tidak tahu apa perbedaan antara keduanya, tapi yang pasti berdasarkan beberapa sumber yang dapat dipercaya, CIFS lebih baik dari SMBFS. Nah, di mana lebih baiknya saya juga kurang mengerti.</p>
<p>Jadi untuk solusi Linux+Dosemu+FoxPro+SMBFS, saya rubah menjadi Linux+Dosemu+FoxPro+CIFS. Perubahan ini tidak saya lakukan menyeluruh untuk melihat di mana letak perbedaannya, dan sejauh mana peningkatan kedua File System ini. Kondisi yang ada saat ini, beberapa komputer menggunakan CIFS, dan yang lain menggunakan SMBFS. Perlu diketahui juga bahwa salah satu alasan yang memperkuat saya untuk migrasi ke CIFS di beberapa komputer adalah kenyataan bahwa di Ubuntu versi terbaru (Gutsy ke atas) solusi Linux+Dosemu+FoxPro+SMBFS tidak bekerja. Files yang di-mount dengan SMBFS tidak dapat di-write di Dosemu.</p>
<p>Lalu worst case pun terjadi, anehnya, kasus-kasus bermunculan tidak langsung muncul pada saat saya merubah dari SMBFS ke CIFS. Kasus-kasus pun munculnya secara acak baik waktu, program, dan database. Saya sempat frustasi beberapa bulan karena masalah ini.</p>
<p>Akhirnya saya melakukan test, yang saya coba se-sistematik mungkin. Saya melakukan test perbandingan terhadap files yang di-mount dengan SMBFS dan CIFS. Hasilnya pun kemudian memberikan pencerahan yang luar biasa (untuk saya).</p>
<p>Hasil dari test menunjukkan bahwa CIFS memang lebih baik dari SMBFS dalam hal Locking. Artinya, mekanisme Locking di FoxPro dapat berjalan dengan baik. Tapi, kelemahannya adalah isi record / file tidak langsung ter-update saat ada perubahan oleh user lain. Ini fatal sekali. Meskipun sudah dilakukan prosedur locking sesuai standar, file tidak ter-update. Apabila file di buka ulang, barulah update dari user lain terlihat.</p>
<p>Berbeda dengan SMBFS, mekanisme Locking di FoxPro tidak dapat dilakukan. Meskipun file / record di-lock, user lain tetap dapat melakukan lock di file / record yang sama. Namun, update file dapat terlihat secara instant oleh user lain. Ini tentunya setelah saya modifikasi smb.conf untuk mematikan Op-Lock terhadap files database.</p>
<p>Langkah selanjutnya adalah merubah semua komputer untuk menggunakan SMBFS. Tapi masalahnya untuk komputer dengan sistem operasi Ubuntu Gutsy, Hardy, Intrepid tidak dapat menggunakan SMBFS. Maka solusinya adalah dengan mengganti sistem operasi dengan Ubuntu versi sebelumnya (downgrade) atau menggunakan Distro lain.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[.Net Framework 2.0:(Sistem Tipleri)System Types]]></title>
<link>http://burakdd.wordpress.com/2009/04/01/net-framework-20sistem-tiplerisystem-types/</link>
<pubDate>Wed, 01 Apr 2009 21:41:30 +0000</pubDate>
<dc:creator>burakddd</dc:creator>
<guid>http://burakdd.wordpress.com/2009/04/01/net-framework-20sistem-tiplerisystem-types/</guid>
<description><![CDATA[Herkesin bildiği gibi yazılım geliştiricileri çeşitli projelerde çeşitli veri tipleri kullanmak zoru]]></description>
<content:encoded><![CDATA[Herkesin bildiği gibi yazılım geliştiricileri çeşitli projelerde çeşitli veri tipleri kullanmak zoru]]></content:encoded>
</item>
<item>
<title><![CDATA[Tutorial : Using MySQL ODBC Connector with Foxpro 9 and MySQL]]></title>
<link>http://efransiscus.wordpress.com/2009/03/15/tutorial-using-mysql-odbc-connector-with-foxpro-9-and-mysql/</link>
<pubDate>Sun, 15 Mar 2009 17:43:13 +0000</pubDate>
<dc:creator>Erwin Fransiscus</dc:creator>
<guid>http://efransiscus.wordpress.com/2009/03/15/tutorial-using-mysql-odbc-connector-with-foxpro-9-and-mysql/</guid>
<description><![CDATA[Yesterday, I got a project to handle with MySQL and Visual Foxpro. I&#8217;m used to MySQL, and so d]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Yesterday, I got a project to handle with MySQL and Visual Foxpro. I&#8217;m used to MySQL, and so does with Visual Foxpro. The trouble is that I&#8217;ve never work on both of them in the same time. Usually I&#8217;m using Foxpro integrated DBMS when using Visual Foxpro, and MySQL used to be a DBMS when I&#8217;m using PHP, C#, or ASP.Net.<br />
I got a little problem on connecting those software, but after multiple tries, it did works.<br />
How that happen? here&#8217;s the simple tutorial:</p>
<p>Note : I&#8217;m using Microsoft Windows XP SP 3, Visual Foxpro 9, and WAMP server 1.7.3, I&#8217;m working on a single desktop pc. I&#8217;m sorry i didn&#8217;t include the images example on doing this, hope with just the texts you would understand how it works.</p>
<p>First, create a database on MySQL. The database is quite important, because when you install and configure ODBC, there&#8217;s an option of which databases you want to use.  I&#8217;m also using PHPmyadmin for the GUI of the database application.  here&#8217;s for example.</p>
<blockquote><p>&#62; CREATE DATABASE dbfarmasi<br />
&#62; CREATE TABLE  `dbfarmasi`.`tb_brg` (`kdbrg` CHAR( 6 ) NOT NULL ,`nmbrg` VARCHAR( 50 ) NOT NULL , PRIMARY KEY (  `kdbrg` )) ENGINE = INNODB<br />
&#62; INSERT INTO  `dbfarmasi`.`tb_brg` (`kdbrg` ,`nmbrg`) VALUES ( &#8216;00001&#8242;,  &#8216;First item&#8217; );<br />
&#62; INSERT INTO  `dbfarmasi`.`tb_brg` (`kdbrg` ,`nmbrg`) VALUES ( &#8216;00002&#8242;,  &#8216;Second item&#8217; );</p></blockquote>
<p>i&#8217;m named the database &#8220;dbfarmasi&#8221; and the table &#8220;tb_brg&#8221;. So here, we got a database and a table, rock!</p>
<p>Then you download a software called MySQL ODBC Connector. I&#8217;m using mysql-connector-odbc-3.51.25-win32.exe, which is free, and can be downloaded by visit mysql site. You can try to google it.</p>
<p>Install. After installation has done, you should go to &#8220;Control Panel&#8221; &#62; &#8220;Administrative Tools&#8221; &#62; &#8220;Data Sources (ODBC)&#8221;. And then there&#8217;s pop-up window of ODBC. In &#8220;User DSN&#8221; tab, right side, press &#8220;Add&#8221; button&#8221;,  and select &#8220;MySQL ODBC 3.51 Driver&#8221; as the data source, and &#8220;Finish&#8221;.</p>
<p>Another windows will appear, it is a configuration window for ODBC. Try this :</p>
<blockquote><p>Data source name : <strong>koneksi</strong><br />
Description : connect foxpro and mysql<br />
Server : <strong>localhost</strong><br />
User : <strong>root</strong><br />
Database : <strong>dbfarmasi</strong></p></blockquote>
<p>The DSN name is up to you, so does the description.<br />
The default Server is localhost, &#8217;cause I&#8217;m not using remote database.<br />
Default user name is root, as the first super user name in mysql.<br />
I&#8217;m using no password on mysql (it is set to none by default when you&#8217;re install WAMP)<br />
and the database I&#8217;m using is dbfarmasi, as i&#8217;ve created before.</p>
<p>Ta-da. The connection has been made.</p>
<p>Now, for the visual foxpro. here is a simple one :<br />
Create a project, whatever the name is, save it. on &#8220;Project Manager&#8221; window, choose &#8220;Code&#8221; tab.<br />
Press &#8220;New&#8221; on Program.<br />
Here is the code:</p>
<blockquote><p>PUBLIC P1<br />
STORE SQLCONNECT(&#8216;koneksi&#8217;, &#8216;root&#8217;) TO P1</p></blockquote>
<p>close and save it to name :  &#8221;<strong>setdatabase</strong>&#8220;</p>
<p>now, back to &#8220;Project Manager&#8221; window, choose &#8220;Document&#8221; tab, press &#8220;New&#8221; button to create a new form, and pick the &#8220;New Form&#8221;, not the &#8220;Form Wizard&#8221; thing.<br />
After that, an empty form will appear. create a two Textboxs.<br />
named the first textbox to : <strong>txtkdbrg</strong> and the second textbox to : <strong>txtnmbrg.</strong><br />
Add a grid to form. named it as <strong>gridContainer. </strong></p>
<p>Now double-click the form,  select the object <strong>form1 </strong>and the procedure <strong>init</strong>, and add this code:</p>
<blockquote><p><strong>DO setdatabase</strong><br />
thisform.gridContainer.RecordSource=&#8221;"<br />
<strong>SQLEXEC(P1,&#8221;select * from tb_brg&#8221;,&#8221;tb_brg&#8221;)</strong><br />
IF NOT USED(&#8220;tb_brg&#8221;)<span> </span><br />
<span> </span>USE tb_brg ALIAS tb_brg<br />
ENDIF <br />
SELECT tb_brg<br />
thisform.gridContainer.RecordSource=&#8221;tb_brg&#8221;</p></blockquote>
<p>Save the form and run it. TA-DA. It works, its connected. The content of table &#8220;tb_brg&#8221; is showed by the form by the gridContainer.</p>
<p>It means that the ODBC works. Here the connection thing :<br />
<em>do setdatabase</em><br />
<em>SQLEXEC(P1,&#8221;select * from tb_brg&#8221;,&#8221;tb_brg&#8221;)</em><br />
means :<br />
run program code &#8220;setdatabase&#8221; (which we&#8217;ve created before, for connection)<br />
select <strong>P1</strong> as ODBC connection DNS, (connection name variable in setdatabase (replace SQLCONNECT(bla bla bla))<br />
&#8220;select * from tb_brg&#8221;, the sql query, select all from table tb_brg<br />
&#8220;tb_brg&#8221;, is a cursor in visual foxpro, that used for alias.</p>
<p>So, with SQLEXEC([connection name],&#8221;[sql query]&#8220;,[cursor name]), you can do sql command: <strong>SELECT</strong>. Don&#8217;t forget to add cursorname/alias when you&#8217;re using <strong>SELECT</strong>.</p>
<p>You don&#8217;t have to add cursorname if you&#8217;re using INSERT or DELETE query.<br />
example :</p>
<blockquote><p>SQLEXEC(P1,&#8221;insert into tb_brg (kdbrg,nmbrg) values 	(&#8216;&#8221;+thisform.txtkdbrg.value+&#8221;&#8216;,&#8217;&#8221;+thisform.txtnmbrg.value+&#8221;&#8216;)&#8221;)</p></blockquote>
<p>means you insert value from textbox (txtkdbrg and txtnmbrg).<br />
for delete command example : </p>
<blockquote><p>SQLEXEC(P1,&#8221;delete from tb_brg where kdbrg =&#8217;&#8221;+thisform.txtkdbrg.Value+&#8221;&#8216;&#8221;)</p></blockquote>
<p>Once again, i&#8217;m sorry i&#8217;m not using images for this tutorial.<br />
Hope you understand what i meant in this simple tutorial, and hope it help you.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Loreli Voltmer, PFUG Member, interviewed by FileMaker Addict]]></title>
<link>http://phillyfilemaker.wordpress.com/2009/02/25/loreli-voltmer-pfug-member-interviewed-by-filemaker-addict/</link>
<pubDate>Wed, 25 Feb 2009 20:50:29 +0000</pubDate>
<dc:creator>Colin Keefe</dc:creator>
<guid>http://phillyfilemaker.wordpress.com/2009/02/25/loreli-voltmer-pfug-member-interviewed-by-filemaker-addict/</guid>
<description><![CDATA[Our very own group member Loreli Voltmer of MATAAC has been interviewed by Tim Dietrich on his FileM]]></description>
<content:encoded><![CDATA[Our very own group member Loreli Voltmer of MATAAC has been interviewed by Tim Dietrich on his FileM]]></content:encoded>
</item>
<item>
<title><![CDATA[Actualización de seguridad para Visual FoxPro SP2]]></title>
<link>http://aidev.wordpress.com/2009/01/19/actualizacion-de-seguridad-para-visual-foxpro-sp2/</link>
<pubDate>Mon, 19 Jan 2009 11:06:00 +0000</pubDate>
<dc:creator>jetspydragon</dc:creator>
<guid>http://aidev.wordpress.com/2009/01/19/actualizacion-de-seguridad-para-visual-foxpro-sp2/</guid>
<description><![CDATA[Leo en Visual FoxPro Developer Center la salida de un parche de seguridad que soluciona ciertas vuln]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Leo en <a href="http://msdn.microsoft.com/en-us/vfoxpro/default.aspx" target="_blank">Visual FoxPro Developer Center</a> la salida de un parche de seguridad que soluciona ciertas vulnerabilidades en controles ActiveX. &#8220;Estas vulnerabilidades podrían permitir la ejecución remota de código si un usuario visita un sitio web que incluye contenido especialmente diseñado. Por tanto, los usuarios cuyas cuentas estén configuradas con pocos derechos de usuario en el sistema correrían un riesgo menor que aquellos que cuenten con derechos de usuario administrativos.&#8221; (<a href="http://support.microsoft.com/?kbid=958371" target="_blank">KB958371</a>).</p>
<p>Pueden descargar el parche directamente desde el sitio de Microsoft (<a href="http://msdn.microsoft.com/en-us/vfoxpro/bb264582.aspx" target="_blank">aquí</a>). Si bien hay parches para el SP1, es conveniente actualizar VFP9 a SP2 y luego aplicar el patch respectivo.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Foxpro, Coldfusion File Read Error]]></title>
<link>http://sidfishes.wordpress.com/2008/12/19/foxpro-coldfusion-file-read-error/</link>
<pubDate>Fri, 19 Dec 2008 19:10:03 +0000</pubDate>
<dc:creator>sidfishes</dc:creator>
<guid>http://sidfishes.wordpress.com/2008/12/19/foxpro-coldfusion-file-read-error/</guid>
<description><![CDATA[I&#8217;m right in the middle of final testing for my UPSConnect/Coldfusion app and I started  to se]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I&#8217;m right in the middle of final testing for my UPSConnect/Coldfusion app and I started  to see a bunch of errors popping up in my logs and my app stopped working.</p>
<p>The specific error was</p>
<p>[ODBC Visual FoxPro Driver]Error reading file</p>
<p>Hmm. I verified that the remote folder was accessible and the datasource verified in CFAdmin. Still no go.  Couldn&#8217;t even perform a simple select on any of the dbf files</p>
<p>One thing is different today is I&#8217;m testing after UPS End of Day procedure has been run. This procedure &#8220;archives&#8221; the days shipments by copying them into new tables and emptying the working tables.  So I thought maybe there might be an issue with the driver accessing empty tables (although I was 99.9% sure that I had selected on empty table before)</p>
<p>Then I had a thought.  Uncheck good old &#8221; 					 						 Maintain connections across client requests&#8221;  in CFadmin&#62;Datasources&#62;Advanced Settings</p>
<p>Sure enough, that fixed the problem. I can select on my tables again.</p>
<p>Now I&#8217;m not sure -why- my datasource would work for 2 months with this setting enabled and then -not- but at least it&#8217;s working.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Cara Koneksi Bluetooth ]]></title>
<link>http://ekoputra2008.wordpress.com/2008/11/18/cara-koneksi-bluetooth/</link>
<pubDate>Tue, 18 Nov 2008 09:05:15 +0000</pubDate>
<dc:creator>ekoputra2008</dc:creator>
<guid>http://ekoputra2008.wordpress.com/2008/11/18/cara-koneksi-bluetooth/</guid>
<description><![CDATA[1. Install driver bluetooth (BT) anda. 2. Aktifkan Setting bluetooth di HP anda. 2a. Masuk ke folder]]></description>
<content:encoded><![CDATA[1. Install driver bluetooth (BT) anda. 2. Aktifkan Setting bluetooth di HP anda. 2a. Masuk ke folder]]></content:encoded>
</item>
<item>
<title><![CDATA[Import Data dari xls ke dbf (sederhana)]]></title>
<link>http://ekoputra2008.wordpress.com/2008/11/18/import-data-dari-xls-ke-dbf-sederhana/</link>
<pubDate>Tue, 18 Nov 2008 08:36:20 +0000</pubDate>
<dc:creator>ekoputra2008</dc:creator>
<guid>http://ekoputra2008.wordpress.com/2008/11/18/import-data-dari-xls-ke-dbf-sederhana/</guid>
<description><![CDATA[1. Awalnya buat sebuah file xls &#8230; disini saya beri nama shipping.xls 2. Pada baris I buat head]]></description>
<content:encoded><![CDATA[1. Awalnya buat sebuah file xls &#8230; disini saya beri nama shipping.xls 2. Pada baris I buat head]]></content:encoded>
</item>
<item>
<title><![CDATA[Membuat Project, Database dan Tabel (VFP)]]></title>
<link>http://ekoputra2008.wordpress.com/2008/11/18/membuat-project-database-dan-tabel-vfp/</link>
<pubDate>Tue, 18 Nov 2008 07:01:29 +0000</pubDate>
<dc:creator>ekoputra2008</dc:creator>
<guid>http://ekoputra2008.wordpress.com/2008/11/18/membuat-project-database-dan-tabel-vfp/</guid>
<description><![CDATA[Untuk langkah awal kita buat sebuah Project baru, pilih menu File -&gt;New -&gt;New File, kemudian b]]></description>
<content:encoded><![CDATA[Untuk langkah awal kita buat sebuah Project baru, pilih menu File -&gt;New -&gt;New File, kemudian b]]></content:encoded>
</item>

</channel>
</rss>
