amorosik
Active member
- Local time
- Today, 21:52
- Joined
- Apr 18, 2020
- Messages
- 747
, I’m intrigued to know how you would accomplish this.
I actually asked in the group because I wanted to understand if you know the solution
, I’m intrigued to know how you would accomplish this.
One of the many advantages of maintaining one version and restricting according to e.g. job role or license type is that the app doesn’t need to be reinstalled
The solution I know but would not use would be copy/paste so now you understand. I’m interested in knowing your solution or at least understanding why the two solutions suggested do not meet your requirements and some idea of what you envisage as being an acceptable solutionI wanted to understand if you know the solution
I think we might be dealing with a language problem rather than an intention problem.That is the road to chaos. My software is always delivered as the same code base. The license key provides the information required to assign functions to groups. Within the app, the administrators can control the usage of forms by individuals by using the internal security which is similar to what is done in the sample app.
So you know "the" solution but are toying with us. I quit, you're on your own. I don't have time to waste on your test. Do not expect me to bother answering future questions you post.
The OP has a reputation of asking open ended questions and omits relevant facts about the requirement. Look back though their history. This one is a good example as it relates to this thread.I think we might be dealing with a language problem rather than an intention problem.
Also my software is made like this, with a key that activates the authorized functionsThat is the road to chaos. My software is always delivered as the same code base. The license key provides the information required to assign functions to groups. Within the app, the administrators can control the usage of forms by individuals by using the internal security which is similar to what is done in the sample app.
I'm asking for something, and this means that I don't know it otherwise I wouldn't have askedSo you know "the" solution but are toying with us. I quit, you're on your own. I don't have time to waste on your test. Do not expect me to bother answering future questions you post.
The OP has a reputation of asking open ended questions and omits relevant facts about the requirement. Look back though their history. This one is a good example as it relates to this thread.
How to make a large project?
Sometimes these are projects with a few dozen forms, tables, and some code modules But sometimes we are faced with projects that have hundreds of forms, hundreds of reports, dozens of modules even with a lot of code, and in this case we often get close to the limits of the Access environment...www.access-programmers.co.uk
And if responders ask for clarification it would appear you are too arrogant to answerTo understand the request, you just need to know how to read, it's written
I never wrote that this is a testYou said this was a test because
I never wrote that I knew the answeryou already know the answer.
I never wrote that I wanted to know if you know MY answerYou want to know if any of us know YOUR answer.
I am sincerely sorry that you may think that my question was not respectful, but I have to tell you that it is not so.That is a total disrespect of our time and I'm not playing.
I use a library to hold all my code which is common across my apps / clients. Sometimes two libraries. Then the FE mostly has app specific code. Other than that I use a Presentation Level Security system to determine who gets to see what. I would never even consider splitting a database up. That said, if there are tightly controlled bounds, then perhaps a sales database, an accounting database etc. But to try and do this on the fly is just nuts IMHO.
You could create an application in which you configure the different versions and then create the different versions similar to the msaccess-vcs.Every time the Version0 project is modified, I have to recreate Version1 and Version2 (...VersionN) with the limited set of forms, reports, modules, which will be assigned to them
Sub CopyVersions()
' Version1: delete query1 and form1
CreateObject("Scripting.FileSystemObject").CopyFile CurrentProject.FullName, CurrentProject.Path & "\Version1.accdb", True
With CreateObject("Access.Application")
.OpenCurrentDatabase CurrentProject.Path & "\Version1.accdb"
.DoCmd.DeleteObject acQuery, "query1"
.DoCmd.DeleteObject acForm, "form1"
.CloseCurrentDatabase
.Quit
End With
' Version2: delete report1 and form1
CreateObject("Scripting.FileSystemObject").CopyFile CurrentProject.FullName, CurrentProject.Path & "\Version2.accdb", True
With CreateObject("Access.Application")
.OpenCurrentDatabase CurrentProject.Path & "\Version2.accdb"
.DoCmd.DeleteObject acReport, "report1"
.DoCmd.DeleteObject acForm, "form1"
.CloseCurrentDatabase
.Quit
End With
End Sub
You could create an application in which you configure the different versions and then create the different versions similar to the msaccess-vcs.
In principle, you could even use the msaccess vcs to create it. You just have to make sure that the appropriate files are available in the folder of the specific version.
It could be as simple as this:
Code:Sub CopyVersions() ' Version1: delete query1 and form1 CreateObject("Scripting.FileSystemObject").CopyFile CurrentProject.FullName, CurrentProject.Path & "\Version1.accdb", True With CreateObject("Access.Application") .OpenCurrentDatabase CurrentProject.Path & "\Version1.accdb" .DoCmd.DeleteObject acQuery, "query1" .DoCmd.DeleteObject acForm, "form1" .CloseCurrentDatabase .Quit End With ' Version2: delete report1 and form1 CreateObject("Scripting.FileSystemObject").CopyFile CurrentProject.FullName, CurrentProject.Path & "\Version2.accdb", True With CreateObject("Access.Application") .OpenCurrentDatabase CurrentProject.Path & "\Version2.accdb" .DoCmd.DeleteObject acReport, "report1" .DoCmd.DeleteObject acForm, "form1" .CloseCurrentDatabase .Quit End With End Sub
Check the attached file, go to mod2 module and run the CopyVersions sub.