Stopping DB after "free trial" etc

Nigel,

Thanks very much for doing that.

I entered in [abc] the number for 4/1/09 and then started advancing the date on the computer and all worked. I advanced the computer date through to 6/1/09 and all worked with -2 showing in Text19

However, turning the computer back starts the trial period and text19 moving to + 5 days etc.

I have not looked much behind the scenes yet although noticed text19 is null when form is opened.

I will look at behind the scenes tomorrow as it nearly 1am here and I have been up all day and the previous night making stuff and have double vision:D

But it looks good as no table

As to manual entering the "end trial date number" in [abc] there is no problem there as it is not like I am selling a bundle each day and in addition it is part of what is sold as opposed to something that is stand alone. In other words it might be take me an hour or so to make the back up system and other file management systems to suit person and so entering the date is no big issue. Also, there would not be a standard trial period, the trial periuod would depend on what was sold.
 
hi mike

Any further development with this or did you get what you need?

Nigel
 
Nigel,

I am going to see I can get yours working on the weekend, I also have a couple of other things on hold until then.

But I suspect it can't be done unless Form1 is opened in Design and then the number changed and then Form1 closed/saved and reopened.

I would like to get yours working as you have only one form as opposed to my two forms and a table.

Mike
 
Mike375,

Curious, What type of application you are adding the trial to?.

It has been my experience evaluating lots of software for clients and reviews, the ones that have a number of days limit are very hard to evaluate properly. :(

When entering test data, I enter data for multiple periods (both months and years). I will roll the dates to allow the system to do the data stamping. This way I can test the reports and process for months, quarters, and years.

You restraints for the trial period must allow for proper testing.

I have found it better to just limit the number of record entered into the main tables. I also restrict data enter into some of the lookup tables that only have sample data. This allow the testing of the transactions. :)

If I am evaluating or reviewing several packages, it may take me weeks or even months to get them all evaluated or reviewed. If I evaluated yours first and then it expired before I could go back to it to compare it the others I liked side by side, yours will probably get forgotten since it will no longer run.
 
Mike375,

Curious, What type of application you are adding the trial to?.

It has been my experience evaluating lots of software for clients and reviews, the ones that have a number of days limit are very hard to evaluate properly. :(

In general it is not DB stuff as such. It is back up systems, general folder/file management that is run from Access or although I have versions that will run it from Excel. I have been selling it from $250 to $500 but I want to sell it so the person can have it and only pay if they like it. So it is not like a DB in the sense that it will be evaluated very quickly and because I can make the changes very quick from one to person to another I don't have to make every sale come home. In other words if I hand out 10 and get paid a week later for 5 of then that is fine.

Using the line available for the Event was the only way I could think of to have a reference system.

With DBs I don't have a trial period. I require 1/3rd up front, another 1/3rd for a rough working version and the final 1/3rd on completion.

But I suspect the market I would sell to would be a very different situation to yours. I sold insurance all my life and was doing this part time for a few years for other insurance people and then a couple of months ago decided to give it a full time run.:)

At this early stage the money appears to be in the $500 deals as very quick to make and no problems.

The other reason I want the "trial period" is because I have another salesman working for me (that now makes 2 of us:D) and I don't want him wasting his timetrying to evaluate people and the sort trial period means either quick payment or the deal is a write off.
 
Nigel,

I am going to see I can get yours working on the weekend, I also have a couple of other things on hold until then.

But I suspect it can't be done unless Form1 is opened in Design and then the number changed and then Form1 closed/saved and reopened.

I would like to get yours working as you have only one form as opposed to my two forms and a table.

Mike

Hi mike,

What number are referring too which means the form1 is opened in design view, saved and reopened? Is it the onclick value of abc? If so, this is easily solved. As I see it, you don't need abc or xyz as the hb can handle everything.

If you want to describe your exact needs, I'll rustle a solution up for you :)

Happy new year

Nigel
 
Nigel,

A date for end of trial

Winding back the date won't defeat it...it will on that version you posted

It does not even need to show Days Left etc.

it would be the start of the application and the code to kick of the application is going to depend textbox>0 etc

On the one I made I have form1 open in design view (from code on Form2) and Forms!Form1!xyz.OnClick = Forms!Form2!T7 can close and save

[T7] Has Date()*86400

Forms!Form1!abc.OnClick has the Delivery Date * 86400

This Forms!Form1!xyz.OnClick = Forms!Form2!T7 only works if the value on OnClick line is <= Date() whic stops winding back the computer.

My original issue was I could not get If Then End If to read the situation but no problem with macro. Also, I could not get If Then End If to read an unbound textbpx on Form2 with =Date()*86400. It was like the value was lost for split second.

So introduced the table. From a practical point fo view the table is OK because it does not matter what someone would enter as it is wiped out by the code. If they delete the table that nothing works:D

My current issue is Echo False just makes everything vanish. So unless something else is forthcoming:D I will have the forms without borders and open at zero dimensions.

The macro works perfectly but I can't hide them in MDE. In MDE you can go to macro design and change things, only export/import is blocked.

But again, the objective

A date for end of trial and winding back the date won't defeat it.
 
Nigel

I forgot to attach.

I have put Date()*86400 in OnClick for [xyz] on Form1. Advance the date and run it and wind back the computer won't defeat it.
 

Attachments

hi mike,

I did make an ammendment the other day. A simple if then that checked the days left.

If days left > 0 then
Days left = 0
Msgbox ("you have no days left")
Else
Other code here
End if

Or something to that effect. I'll take a look when I get in. Currently standing in -6 turning horses out!!!!

I'll look at your latest in a bit and fix it up.


Nigel
 
Nigel,

What is there works but there is the Echo problem.

This the same one I posted up ona another thread a few days ago.

But if you can do it with out the table that would make it a bit nicer.
 
hi mike,

I've already done this without a table so already working.

I'm guessing then this should happen as the program starts. If so, you need it all to run on startup. Either by a function controlled by autoexec or move everything to to the form onload.

Fundementally, you need the finish date set and a check for todays date. If the result between the 2 are less than 0 the trial ends. Using your method for checking for altered dates.

There is nothing on your form that cannot be done without a single item on the form. I.e. You don't actually need a form.

It can be done, just need your actual process. I would have a registry value stored. That way, it's self automated.


Nigel
 
hi mike,

I've already done this without a table so already working.

But winding back the computer defeats as the trial date is reset.

I'm guessing then this should happen as the program starts. If so, you need it all to run on startup. Either by a function controlled by autoexec or move everything to to the form onload.

I would just open the form on Autoexec and "the program" would follow running the date setter but not go anywhere if >0 etc.

Fundementally, you need the finish date set and a check for todays date. If the result between the 2 are less than 0 the trial ends. Using your method for checking for altered dates. ]

But what about winding back the computer?

s nothing on your form that cannot be done without a single item on the form. I.e. You don't actually need a form.

It can be done, just need your actual process. I would have a registry value stored. That way, it's self automated.

Nigel

I don't want to get involved with the registy for two reasons. One, I am not sure of my ground with the registry and don't want to be fiddling with that part of someones computer. Two, I just want to be able to email this out or have delivered on a disk. Can the registry be altered (or whatever is done) by the program.

If the registry is something I would need to change for the person or for that matter do it over the phone then it would not be practical. The people are not usually computer literate and it is enough just getting the names of the computer or computers on the network and/or external hard drive letter.

On the attachment can you make Echo False work?
 
hi mike,

I'll look at the echo when I get in. The other stuff is all easily changable for what you need. I just need to click my head into yours ( if that makes sense )

In regards to registry

Vba does this. You make up the key and access will look for it. If it isn't there, it will create it and enter your value. If it is there, then it will get your value and test it against the current.

This is all done silently so no one would actually know. Plus, the registry could be anything so someone snooping around could probably never find it.

It's quite easy to do and you could also make a small tool to reset the value if you wanted for extending a trial.

I purchased my security from sagekey. It was quite cheap and fully controlled over the Internet so potentially, I could extend or revoke a trial as needed.


Get back to you later mate.


Nigel
 
hi mike

The attachment is the original one posted.

How much do you know of vba as the last one I posted could have been easily changable to prevent back dating. I set a condition today. The db states -2 days and my condition flashes a message of such.

What are you using echo for? Usually, it's easier to understand the reason so you can work a solution. As I recall, echo prevents screen repainting. I don't use it personally.

It really would be best if you could outline how you want things to work so it can be made that way.

I want to use echo because........
I want to be able to do........ In this certain way

Regs

Nigel
 
Nigel,

On that one I made Echo stops the forms from jumping.

For some reason Echo False in VBA often fouls up. It is not the command because if you replace the command and run a macro that has Echo No it still does the same. But Echo No in a macro followed by macro action is always OK. Don't know why because I have always been under the impression that macros were like pre packaged VB

I set a condition today. The db states -2 days and my condition flashes a message of such

I know, but what about when wind the computer date back?
 
Nigel,

I juist tried that one you made again.

It was set at "2days to go"

Advanced computer and the message...Sorry your trial has now ened...

Wind back the date to today and ....you have 2 days left for your trial
 
Hi Mike

here is an updated db with the dates irreversable. there are 2 options-

Select Case
If Then

both work fine and trap the date change.

let me know how you get on with it.


Nigel
 

Attachments

Hi Mike,

the form flickers because of unbound labels. its quite common. you're better using a button

nigel
 
as a point of interest, I never use macros ever. Well, only to run a function from a ribbon control. They seem problematic. Vba is far more versitile so it seems easier to stick with 1 method rather than 2.

Autoexec is the only macro in my latest program and it's quite complex!

Regs

Nigel

p.s.
Think it easiest to keep values to tables rather than registry. Was reading up and there seems to be writing issues on some instances at runtime.

I have a final update to do and it will include a table to hold the initial finish date. When the form loads, it will look for the value. If it's there, code will run the check. If it's not there, code will place the new finish date and run the code. There should only ever be 1 record in the table so a matching record number will be placed on the form hidden. If the record is deleted, the record numbers won't match so the trial won't run. If the value is deleted, the trial won't run based on the record number being created yet a value missing.

If the value is altered, the calculation won't work.

Nigel.
 
Winding back the date defeated it:)

But I might have entered in the wrong place. I put 7 Jan X 86400 in [abc] and Date() *86400 in [xyz]

I think you had [abc] as the check

That brought it back to days left.

Then I advanced throug and it did it is thing with Trial Over at 0 days. Wound back computer and trial restarted.

The If one did not seem to change. When I first set it back it was still Trial Over. The Case Select button and On Load are the same.

When I down loaded your it was at -3 days. I wound back computer 1 day then 2 etc and it went from -3, -2 and into postive.

I still reckong you won't get there with one form:)
 

Users who are viewing this thread

Back
Top Bottom