Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

This topic is 5708 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

A file of Job Sheet records (currently 440) with several added each day. Active life of a Job Sheet is normally a day or two but the odd one could stretch into a few weeks. When a Job Sheet is completed, it is retained in the file for reference and, more importantly, for its Bank Balance and Profit/Loss figures which are included with various Summaries for all the Sheets. So, in conclusion, my file is similar to a Bank Statement where each entry is a Job and where there is a running balance, plus various other analysis summaries.

I have two problems which relate to delays when taking various actions - the progress bar is coming up and staying on more and more.

1 Print: I have a print button which works well with its script so that I just have to enter the page number in the print dialogue box. However it is taking longer before the print box appears. If I find the Job Sheet record first manually, it then appears immediately. I always just wish to print the particular record which I have on the screen. Is there a way to make the print script find the record first automatically and then continue to the print box? I have tried but am having no joy with Enter Find Mode etc., within the script.

2 Selecting various Sets of Records: I have various buttons with their scripts and the progress bar is taking longer to deal with the summaries. As this is likely to get worse, is there a way around it? I have thought that perhaps I have to archive completed records every month or so and set up Carried / Brought Forward fields for the various balances but I’m not sure if this correct and, in any case, how to go about it.

Hope I have made everything clear and, as always, thanks for any help you can give.

Keith

Posted

You really need to post the scripts as no one can know what is happening in them.

There may also be some complex, possibly unstored, calculations that may be affecting things.

Posted

I made a mistake in my Printer problem description as it should have said that the Print Box comes up immediately as normal but then the print progress bar stays for quite a while before the printer starts.

I assume the problem is that the print software has to find the page whereas, as already stated, if I find the page first, then it prints immediately.

The print script is a simple one with just Print Set Up and Print.

Could we deal with this problem first?

Thanks

Keith

Posted

To print a specific page number, Filemaker must paginate the entire report first. With dependent summaries (such as a running balance), this may take some time.

Posted

Yes, I understand but is there a way of building a find into the print script for the particular page?

As already stated, if I find the page first and then execute print script there is no delay.

Thanks

Keith

Posted

FileMaker works with records, not pages. If each record prints to exactly one page then it's a no brainer, otherwise as Comment said FMP has to render everything to the printer driver than work it all out from there.

The usual process is to isolate the records needed to print, then to print the found set. This can be done with a find, or with a "Go to Related Records" script step if the database is relational.

All of this can be scripted, and is generally better if it is scripted.

Posted

I am only trying to print one record. So how do I create, within the print script, a find which finds the record number I have on the screen?

Thanks

Keith

Posted

Set your print script to "Print Current Record."

Or, use a self-join relationship primary key=primary key on the same table. Go to related record in new window, print, close window.

Posted

I am not comfortable answering this without seeing what role do summaries and unstored calculations play here.

In general, if you have data like:


ID        Amount     sBalance

1            100          100

2            -20           80

3             30          110




and you isolate the found set to record #3 only, your printed result will be:





ID        Amount     sBalance

3             30          30




If, OTOH, you did a Find All, then print current record only, your report will show:





ID        Amount     sBalance

3             30          110

This will be significantly faster than printing a specific page, but still the summary value must be calculated from the entire found set. So it's only a matter of time until this too slows down.

Ultimately, no ongoing business can rely on summarizing all transactions from the beginning of times in order to produce a current report. At some point, some things need to be finalized and stored.

Posted

Thanks for that.

To clarify the print problem, the record does not contain any summaries or balances etc.

It only contains profit/loss for that particular sheet.

The summaries come into play on another layout.

I believe that my only problem with the print script is establishing how I can build a find into the print script for the record number I am viewing,

Thanks

Keith

Posted

Uhm, you don't need to do that - you could simply print current record only (I believe this option should be remembered by the script's Print step??).

But if you want, you could isolate the current record by*:(

Show All Records

Omit Record

Show Omitted Only

Do it a new window, if you don't want to lose your found set.

---

(*) See also:

http://fmforums.com/forum/showtopic.php?tid/184454/

for methods that are better suited to a multi-user scenario.

Posted

I could not find the 'print current record only'. Out of interest, where is it? In any case, I used your Show All etc. and that is instant and I don't even have to see the Print Box. Thanks for that.

I am now left with my second problem from the start of this topic, i.e.

2 Selecting various Sets of Records: I have various buttons with their scripts and the progress bar is taking longer to deal with the summaries. As this is likely to get worse, is there a way around it? I have thought that perhaps I have to archive completed records every month or so and set up Carried / Brought Forward fields for the various balances but I’m not sure if this is correct and, in any case, how to go about it.

To clarify further, there is a List Layout with 4 columns of figures, each having a Summary Field with the usual Summary-Total option for the particular field. The Scripts are simple and merely Show All or find and show XYZ or whatever. Obviously as I select various records, whichever layout I'm on, the Summaries recalculate. It is not a major problem at the moment but it looks as though the Progress Bar is gradually taking longer.

Any thoughts?

Keith

Posted

I could not find the 'print current record only'.

It's an option you get in the Print dialog, after selecting the "Filemaker Pro" section from a drop down menu.

I don't think I can add much to what I said earlier:

Ultimately, no ongoing business can rely on summarizing all transactions from the beginning of times in order to produce a current report. At some point, some things need to be finalized and stored.

You compared your solution to a bank account. I believe a current bank statement is "unstored" only as far back as the previous statement.

Posted

I have tried the print this record. It works fine and the script does remember it.

I accept that closing off records is necessary but I didn't mention that there is also a running bank balance. Obviously this cannot be closed, so would a B/F field for the balance be the best solution if I archive a set of records? I am not sure how this balance would be picked up in the live set of records. For example, if I want to have a normal summary for a column of figures plus the B/F balance, can I do that?

Your help is greatly appreciated.

Keith

Posted (edited)

Sorry. I don't know whether you use it in the states but it is common in UK financial terms. It is Brought Forward with its partner Carried Forward. The latter used for a balance on the full or completed page or whatever and the former is used on the new page. So a new Bank Statement would have a B/F figure from the previous Statement.

Thanks

Keith

Edited by Guest
Posted

There are numerous ways to implement this, but they all come down to storing past information. In the simplest form, each record would lookup the balance from the previous record. and calculate its own balance simply by PreviousBalance + Amount (a stored calculation field).

Posted

Can you spoon feed me as I'm not clear what you are suggesting?

It may help to know that records do not carry any balances.

The bank balance script takes the capital inserted and adds/deducts the profit/loss from every record and displays it in a bank balance field on every record - this is done for convenience and is not stored with the record.

The 4 summaries merely add the figures from the displayed set of records.

Obviously I need to bring forward the bank balance but it would be great if I could also include the summaries for certain sets of records but this is probably too complicated.

Thanks

Keith

Posted

I have taken a look and it appears useful but it will have to wait until I get some time to get down to it.

In the meantime, as I don't use the Summaries that often, I wondered whether there was a simple way of building a Summary into a script and I would then just press a button when I need the total for a particular column of figures. This would avoid the progress bar appearing every time I select different records.

Thanks

Keith

This topic is 5708 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

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