Jump to content

folks

Members
  • Content count

    21
  • Joined

  • Last visited

Community Reputation

0 Neutral

About folks

  • Rank
    member

Profile Information

  • Gender
    Not Telling
  • Location
    Grantham's Landing, BC, Canada

Contact Methods

  • Website URL
    http://folkstone.ca

Recent Profile Visitors

1,154 profile views
  1. EasySync Error 201

    "EasySync supports both "push-only" and "pull-only" tables. To indicate that a table is to be pushed from the mobile device, but not pulled, use an "ES_PUSH_" prefix for the table occurrence's name. To indicate that a table is to be pulled from the host, but not pushed from the mobile device, use an "ES_PULL_" prefix for the table occurrence's name." Try using all caps in your naming of these tables.
  2. Have been using easySync for a while, but recently I have a problem where Close File ["Hosted_Database"] does exactly that on OS X but leaves the server open on iOS. OS X: FM Pro 14 & 15 iOS: FMGo 14 & 15 Tired adding a Close File ["Hosted_Database"] in line 136 of "Sync With Server" at the beginning of #restore user interface but this just generates an error 301: which is record is already in use. But of course the error only occurs on FMGo. I must have done something simple to cause this but not sure what… any ideas are most welcome.
  3. I wonder if the storage for the images remains at the size of the original image taken by the iPad camera in spite of the replacement of that image by a much smaller thumbnail. From the isolated tests below ( with attached example db ) it looks like some of the storage in FMGo14 is recovered but not all, double what it should be. Also the overhead per container record appears to grow in a non linear manner on both FM OS X and FMGo14. Adding photos directly in FM on OS X appears to recover much of the storage that was not recovered in FMGo14. Unfortunately, only when another photo is added. In my solutions all photos are added in FMGo14 so storage size grows quite rapidly : ( The thumbnails are typically smaller than 1.1MB while the storage consumed for each image within the database appears to be average to 3.67 MB If this theory holds water how to I get the extra storage back as this is causing some real problems with sync times. calculation for container field // If the content of the container is an image shrink without distortion so max dimension is 1920 // if it is not an image then return self. This would apply to audio, files and music // if image has a largest dimension that is less than 1920 then just use image do not attempt to enlarge image. If ( PatternCount ( GetContainerAttribute ( Media;"filename" ) ; ".jpg" ) or PatternCount ( GetContainerAttribute ( Media;"filename" ) ; ".png" ) or PatternCount ( GetContainerAttribute ( Media;"filename" ) ; ".bmp" ) or PatternCount ( GetContainerAttribute ( Media;"filename" ) ; ".gif" ) or PatternCount ( GetContainerAttribute ( Media;"filename" ) ; ".tif" ) ; GetThumbnail ( Self ; If ( GetWidth ( Self ) < 1920 ; GetWidth ( Self ) ; 1920 ) ; If ( GetHeight ( Self ) < 1920 ; GetHeight ( Self ) ; 1920 ) ) ; Self ) Isolated Tests Created ContainerPhotoTest filemaker db with a single table and single field Media with GetThumbnail calculated result Move to iPhone 5s FMGo14 take photo ContainerPhotoTest 197 k with no photo ContainerPhotoTest 1.7MB with single photo Export Photo to desktop from Container Photo Size 467 KB But the database storage size has increased by 1.699 MB Add 8.6MB .jpg from the desktop in a second record ContainerPhotoTest 1.3 MB in size Drag photo to desktop from container Photo Size 623 KB ( 197 k + 467 k + 623 k ) = 1287 k 1,300 k - 1287 k = 13 k extra space used. What is happening here. So it looks like it works fine on OS X but perhaps not on iOS Try again with iPad Air 2 iOS • ContainerPhotoTest 1.3 MB in size • Take photo from FMGo14 Container • Take similar photo on iPad camera app • Photo Size 2.6 MB • ContainerPhotoTest 2.1MB in size • photo 800 k size increase • Photo size 467 k • Close and reopen FMGo14 • ContainerPhotoTest 2.1MB in size So it seems that in iOS some space is recovered on the photo re-size but not all. Final Test on OS X • Create new record and. • ContainerPhotoTest 2.1MB in size • drop similar photo 2.2 MB into container from desktop • ContainerPhotoTest still 2.1MB in size, no increase in size... • Quit and re open database • ContainerPhotoTest still 2.1MB in size • drag new photo to desktop 467k ( 197 k + 467 k + 623 k + 467 k ) = 1754 k 2,100 k - 1754 k = 345 k extra space used So it looks like something different is happening on OS X and FMGo I need to gather data including photos on FMGo and in practice as noted in the initial description of the production solution where no photos are added in OS X file size grows quite quickly. ContainerPhotoTest.fmp12
  4. Round Tripping from beta 8 2014 http://www.timdietrich.me/blog/easysync-beta-8-released/ (One possible solution - and perhaps something you'll see in a future version of EasySync - is to add an additional EasySync field that will track the specific device that last updated a record.) Has this been done or are we still round tripping as noted in the link above? I have two versions of client: 1. Data Entry Only 2. View Data Only When they are run on the same iPad and data is entered with Data Entry Only and Sync'd all is well. When View Data Only is used on another iPad the data sync's nicely. But, When View Data Only is used on the same iPad the record previously entered with the Data Entry Only database does not appear in the incremental sync. It will appear if I Reset ( with sync utility ) in View Only Data, then Sync. Not quite sure why the reset should enable the iPad to get the record, unless the reset changes the devise id or something. Any explanations are most welcome.
  5. Noticed that a record created by the Field db on iOS sync'd without problem to the Management db on the Mac... uhmmm... memories of a method used to solve the round trip problem. Perhaps that is what I am tripping over.
  6. I have a requirement for three different database access mechanisms. A Collection db for field use which collects and sends data to the server but does sync from the server to the mobile. A Viewer db which syncs all data from the server but cannot change or delete records A Management db which can both read, write and delete records and syncs both ways. Ideally this would be a single db with different login ID, but… I looked at the business rules section of FMSync and it seems to deal only with pull. So based on login, I could use it to block pull of all data for Collection db, or I though perhaps use appropriate privilege sets to differentiat the three types of access, but I am not sure that this works. So I tried something a little unusual. I created a set of both ES_ and ES_PUSH_ instances of my tables in the server. For Collection db I just have ES_PUSH instances and for the Management db just have ES_ instances. This works nicely with one exception. When I create a record in Collection, which then nicely pushes the record to the Server. Then when I go to look at that record with Management db and sync with the Server the record from Collection does not appear. If I use SyncUtil Script and Reset ES_UTC_Time in the Management db then all the records from the Server sync correctly including the record posted by the Collection db. The problem is that as the db grows downloading the entire db for review instead of a more normal incremental update will take too long. So, the question is why is this reset required. It is almost as if the time stamp ES_UTC_Time data remains in the ES_PUSH_ table instances instead of becoming part of the original table. Server db Collection db Management db Any Suggestions are most welcome Thank you
  7. Just wondering about compatibility of EasySync and EasyDeploy with Filemaker Pro, Go and Server 14 ?
  8. EasySync: Any Way To Sync Found Set? GZync does this is there a way to do this within FM Easy Sync? Perhaps I am missing the obvious. "Folks use this to deliver just one user’s records–usually very specific things like “my customer visits for today” or “my active orders in this territory”.… To control which records are pulled down to your iPads and iPhones: GoZync will look within the results of a find request for records that have changed since the last sync. If you can write a find request, you can sync that found set down to your users." In the application I am working on it would be useful to just pull data for a specific region, since a full sync of the database may get too big over time, depending of course how full people keep their iPads. Any Suggestions are most welcome, Thank you
  9. Strangely, changing this one character not only fixes the SQL problem in table Form 3 but also enable the next table to sync also. So the problems illustrated in this example are now resolved. Thank you, amazing the difference that a single character can make.
  10. OK, Table named Form 3 has a field containing a non-conforming SQL Character, sigh changed from "Bank erosion|collapse" to: "Bank erosion collapse" So, Table Form 3 syncs correctly now, at least in this framework.
  11. I have two, of many tables, which simply do not sync with EasySync Each apparently for different reasons. All the other tables sync just fine. I have created a known working scaffold of the EasySync example to test the tables themselves. The problem occurs here also. FMEasySync v1.3 Test see attached Process: Add two tables to easy sync survey example "Form 3" and "Possible Means To Reduce Stream Sedimentation" Setup and instance of each table and relate to EasySync tables Set in mobile settings version to 1.2 to avoid easy deploy issues for now set EasySync Settings push debug to 1 so we can see what is going on. delete layouts have not been installed to isolate the issue. typically when delete layouts are installed the last record in the mobile is deleted during sync. To test • go to layout “Form 3” • Create new record &add data • goto layout “Possible Means To Reduce Stream Sedimentation” • Create new record &add data • goto layout “Survey List - iPad • click sync button ( top right ) Records From ES_Form 3 show as a single question mark. Records From ES_Possible Means To Reduce Stream Sedimentation show OK but don’t sync with the host In other notes Tim says: The "?" is usually an indication that either an ExecuteSQL call has failed (meaning that the SELECT statement was invalid for some reason) or that something else that required dynamic evalulation failed. Are you sure that all of the ES_ fields have been setup correctly? And do you get this error for every sync, or only under certain conditions? I have replaced all of the ES_Fields in these tables by cutting and pasting from the example code. ___________________ zero records are transferred for either of the test table to the host. Last message is that “The sync process has completed” I tried creating an new table and cutting and pasting field names from Form 3 and achieved the infamous 106 error, perhaps this will help to clarify that issue. After this I recreated the sample databases from scratch yet again. It must be something really simple but I cannot see it, Any suggestions are most welcome. Thank you FMEasySync v1.3 Test.zip
  12. Not quite sure what to make of this, everything was working so well. I would not have expected ES_PUSH table sync to delete data from the client during sync. Perhaps my assumptions are wrong in this regard. Should just PUSH data from client to server. "EasySync supports both "push-only" and "pull-only" tables. To indicate that a table is to be pushed from the mobile device, but not pulled, use an "ES_PUSH_" prefix for the table occurrence's name. To indicate that a table is to be pulled from the host, but not pushed from the mobile device, use an "ES_PULL_" prefix for the table occurrence's name." I am finding that the last record entered is deleted from the iPad client after sync. The record deleted from the client/iPad is transferred to the server. More specifically the primary record remains but the last record entered in a related table is transferred to the server but deleted from the client. Feels like a 1 off loop error of some sort. One of my testers reports a slightly different result for a slightly larger dataset of 6 records. Three records were deleted from the iPad client and not transferred to the server. The remaining three remained on the iPad and were transferred to the server. My suspect here is that there are three UUIDs logical records ( not ES_UUID ) each connecting two related records in another table. My guess is that the last record related to each UUID is missing. Wondering about FM Easy Sync scripts: Sync with Server Sync Check Client • Removing 1 records that are no longer on the server. ( status message seen stepping through in debug, from my testing ) # Refresh Sync Status • Processing UUID Diff… Any thoughts or suggestions are most welcome. Thank you
  13. Does not hang. Just keeps receiving segments, as if never reaching a termination condition. Happens with the FMSurvey sample database when setup for EasyDeploy.
  14. When I setup the FM_Surveys example files for testing and change the version number in the mobile to test easy deploy... Pulling segment 12204 and counting. Standard segment size • Have put server ref into easy deploy db • Have dragged in easy deploy db into container in mobile solution • Have dragged in mobile solution to container in hosted solution • changed the version number in mobile solution to test deployment I see that EasyDeploy is looking for /<b64> in the current segment as an exit condition. Looks like it is not finding it for some reason. I supposed this might happen if there were no file in container, but there is. or... Missing the obvious again I guess. Any suggestions or thoughts are most welcome. Also, would be nice to provide context to the user, as a progress bar normally would, by saying "Pulling segment yy of xxx"
  15. If a remote client has data which has not yet been synced to the server but chooses to update using easy deploy, is the data on the original client database lost in this process? Or, is there some check to ensure that Sync is complete before easy deploy updates the client database? It would be interesting to then Reset the updated client database so the times are current although perhaps this should be done before embedding the client update in the easy deploy layout container on the server. I wonder how hard it would be to then sync only the records that where originally in the client database back to the new version. Perhaps this is already happening & I have missed it, or maybe just wishful thinking. Just looking to make deployment updates as transparent as possible. As always, thoughts, comments and outright laughter is most welcome,
×

Important Information

By using this site, you agree to our Terms of Use.