What is the best or proper way to design a database app where I am using a FrmMain with a left side panel with a number of menu buttons. My question is basically when opening FrmMain should I be querying my Access back end database file to get everything into memory that the menu buttons could ask for, i.e. "Recent Samples", "View Maintenance", "Reports", "Sample Search"... or should I only connect to the database back end to get only what each menu button is going to need when the form specific to the button opens? My FrmRecentSamples currently has what seems to be the same _DatabaseBackEndDataSet as my FrmRecordMaintenance. Would my app be establishing a database connection to the backend each time that I select one of my menu options - or is my _DatabaseBackEndDataSet in client PC memory being used for all of my forms launched by my menu buttons? If I use a master query to accommodate the potential needs of each of my panel buttons that would seem to occupy a large amount of memory. I don't know if my _DatabaseBackEndDataSet file on each form is the same data set, but it does have the same name on multiple forms. *Should I wait until a button launches a form to have an individual dataset connect to the back end to retrieve data?