Is it possible to export entire app ?

  • 0
  • 1
  • Question
  • Updated 11 months ago
  • Answered
Originally posted:
What to do if we want to export a table with layout, dynamic rules and each and every property. other than sharing?
Photo of Dan G. (QB Support)

Dan G. (QB Support), Official Rep

  • 490 Points 250 badge 2x thumb

Posted 2 years ago

  • 0
  • 1
Photo of Dan G. (QB Support)

Dan G. (QB Support), Official Rep

  • 490 Points 250 badge 2x thumb
1 comment

What would be the purpose behind the export?


Answer

Surprisingly in the early days of QuickBase there was a command to do this:

?act=doexport&filetype=oif

I think oif stood for "OneBase Interchange Format" where OneBase was the predecessor product name for what became QuickBase. If you try that command today the response is "OIF format is no longer supported."

That said there is a relatively easy way to get an external structural representation of forms and form rules. However, I am not going to reveal it without understanding what your purpose is. There is a good chance your proposed usage may violate QuickBase's terms of service.


Was this answer helpful?

Answered by:
Original
dandiebolt_QB_Pirate , Pres. of Service Worker Union
QuickBase Pro 24 days ago



1 comment

ok..i understand

Photo of Leslie G

Leslie G

  • 248 Points 100 badge 2x thumb
I am interested in doing the same thing. Our company is closing, so it's not as though we are moving to another competitor. I would like to export the app structure/dynamic form rules so that I can someday re-launch a Quickbase account for a similar business and not have to start from scratch. Is this possible?
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 50,946 Points 50k badge 2x thumb
You would need to make a copy of the app and "Park it" with someone how has a Quick Base Account.  Feel free to contact me and speak directly via my gmail account on the contact page of my website QuickBaseCoach.com
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 26,272 Points 20k badge 2x thumb
If you have only one application I would follow Mark's advice and park the application. If you have many applications there probably is a way to extract the form definitions and restore it using script but there are going to be other aspects of the application that would be difficult to export and no guarantee they would re-import later if QuickBase changed its structure.
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 51,436 Points 50k badge 2x thumb
Export to where?
Photo of joe.acunzo

joe.acunzo, Champion

  • 180 Points 100 badge 2x thumb
I have a similar situation as Leslie G, a client closing their business.  They have stated the possibilty of opening another business in the coming months, and may want to use the same set of apps.  So Dan G, how about sharing the "relatively easy way to get an external structural representation of forms and form rules."  For that matter, is there a way to get all schema elements (other than API_GetSchema) that allows for easy creation of the app in a new Quick Base account?

The biggest issue is preserving cross-app relationships, which there are many.
(Edited)
Photo of Dan G. (QB Support)

Dan G. (QB Support), Official Rep

  • 490 Points 250 badge 2x thumb
Unfortunately, there is no easy way to export an entire App. CSV files per table is the long way. The API GetSchema is the way I know to pull the App setup. The last option is using QB desktop to pull the full App data into MS Access. This will only work to pull the data into MS Access, it won't import back into Quick Base as a new App, but it will at least have the entire app setup in Access: (see steps)

http://www.quickbase.com/developer/knowledge-base/how-would-i-automatically-download-quickbase-table...
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 50,946 Points 50k badge 2x thumb
Dan, while we have your expertise. 

If there is a need to park and app into another Realm and it is in fact a set of apps connected by Cross App relationships, can that be done?  ie will the system prevent the situation where during the transfer process, some of the apps will have different Owners?
Photo of Dan G. (QB Support)

Dan G. (QB Support), Official Rep

  • 490 Points 250 badge 2x thumb
The system won't allow for Cross-Realm App relationships. The apps would have to be all on the same Realm. 
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 50,946 Points 50k badge 2x thumb
OK, good to know that limitation.

Can you move tables from one app to another and maintain the relationships?  ie could you take two apps connected by cross app relationships and make it be 1 larger app so that it could then be transferred to a new Realm?
Photo of Dan G. (QB Support)

Dan G. (QB Support), Official Rep

  • 490 Points 250 badge 2x thumb
I have moved tables from copies of a live app, back to the original app, that retain the relationship after the move, provided the Key and reference fields; on the Parent to Child setup, remain the same. I have not done this with every table in a cross app.

It should be possible to move the tables one at a time, and as each child table that is brought over, it should recognize the parent Key to the child reference field, and re-associate the relationship.  But only one way to find out is to try it. 
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 26,272 Points 20k badge 2x thumb


You can pretty much extract a data representation of anything in QuickBase by using the FormData API:

https://developer.mozilla.org/en-US/docs/Web/API/FormData

The general idea is that using script you navigate to each page where you edit information and extract the FormData representation. Then when you want to "restore" the same data you read the external representation and merge it into the edit form and resubmit it. Conceptually is is not difficult to do and I use this technique to move forms between application but there are a lot of low level mappings to perform and it takes some experimentation to get it working correctly.
(Edited)
Photo of melizzza

melizzza

  • 436 Points 250 badge 2x thumb
Sounds like a feature that should be voiced to Quickbase. For example, what would happen if you just stopped paying your bill? All information disappears? Yikes that would suck if you were a one man business and went into a coma for a few months. There goes all your information. Ouch.
Photo of Dan G. (QB Support)

Dan G. (QB Support), Official Rep

  • 490 Points 250 badge 2x thumb
We do retain the App data on the servers for a 6 month period after the deletion or cancellation of an account, before we fully purge all app data. So hopefully they wake up before the six months are up
; ) 
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 26,522 Points 20k badge 2x thumb
The "state" of a QuickBase application is scatter all over the place so you would have to do a lot of nuisance work to locate on which pages you could extract the state and more work to restore it. The primary "state" you probably want to save is the forms, followed by reports and the dashboard.

One way to save the state of forms is to use script and the FormData API.

This code will extract all properties of a form to an object which can be further searalized and save externally.

var formData = new FormData(mainform);
for(var pair of formData.entries()) {
   console.log(pair[0]+ ', '+ pair[1]); 
}


The essence of this technique is to capture all the form properties while it is being edited and to save them externally
(Edited)
Photo of joe.acunzo

joe.acunzo, Champion

  • 180 Points 100 badge 2x thumb
Just tried your code snippet to save a form.  Very nice, thanks for this tip and code.  I've done similar things to get a list of forms for a given table for some of the Quick Base add-on products I offer since the API doesn't expose that info.
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 26,522 Points 20k badge 2x thumb
Actually I learned this technique from the future Sam Jones who came back in time to terminate native QuickBase in favor of script.