Triggering DAS

Hello,

This capability will be available in the DAS replacement, called Broadcast
Agent. BCA is now in beta with, and will be released with, BusinessObjects
5.0. Release dates are not yet announced.

Among many other new additions, a “file watch” feature will allow BCA to
start a given report as soon as a particular file appears anywhere in the
file system.

fyi//CL


Listserv Archives (BOB member since 2002-06-25)

We have done this in 4.1 using scripts. When the warehouse is finished
loading, an ftp job puts a file on the NT server where the DAS resides.
We have a scheduler on the NT start a BusObj script every 15 minutes.

The script looks for the file. If the file is not there, the script
quits. If the file is there, the script deletes the file and then sends
the appropriate reports to the DAS for immediate or delayed execution.

Larry Rosenblum
Saama Technologies, Inc.

Has anyone implemented the scenario where DAS starts running reports as
soon as the warehouse is finished loading? We don’t think this is a
feature available but we are interested in seeing if there are any
workarounds developed until this type of solution is possible.


Listserv Archives (BOB member since 2002-06-25)

Larry,
this sounds very interesting and I guess will be usefull or many
list-members.
Can you post a copy of your script to the list?
Thanks, Mathias

We have done this in 4.1 using scripts. When the warehouse is finished
loading, an ftp job puts a file on the NT server where the DAS resides.
We have a scheduler on the NT start a BusObj script every 15 minutes.
The script looks for the file. If the file is not there, the script
quits. If the file is there, the script deletes the file and then sends
the appropriate reports to the DAS for immediate or delayed execution.
Larry Rosenblum
Saama Technologies, Inc.


Listserv Archives (BOB member since 2002-06-25)

Cori,

Not a dumb question at all. Yes, one script sends all the reports to the
DAS, though it processes them one at a time. There is a script command
that you can use to send documents to the DAS (though they must be opened
first).

Here’s a little more information about how the setup works.

A text file is created containing a list of the reports to be sent to the
DAS. It contains one filename per line, like this:

report1.rep
report2.rep
report3.rep

The reports are kept in the UserDocs folder as usual.

The script is launched every 15 minutes by a scheduler. Actually, the
schedule launches Business Objects using the -script parameter that
causes BusObj to execute the script upon startup.

Here’s what the script does:

  1. Check for trigger file.
  2. If trigger file not found, write to log file and quit.
  3. If trigger file found, write to log file and delete trigger file.
  4. Open text file containing list of reports.
  5. Begin loop.
    5a. Read a record from the file. If end of file, exit loop.
    5b. Open report using name from record just read.
    5c. Set execution parms (immediate/delay, priority, delivery/publish
    method etc.).
    5d. Send report to DAS.
    5e. Close report and write to log file.
    5f. End of loop.
  6. Write to log file and quit.

As you can see, I’m a big proponent of log files. They are very helpful
for solving problems that may occur, however they are not necessary.

The logic for execution parms is coded into the script, but it could also
be coded into the file. For example, if some reports are to be given
high priority and some normal, then the file could be:

report1.rep,high
report2.rep,normal
report3.rep,high

The script has to parse the record and process accordingly.

The nice thing about the setup is that if you want to add or delete
reports, all you need to do is change the text file and then add or
delete the report from the UserDocs directory.

Larry Rosenblum
Saama Technologies, Inc.

From: corinne.griswold@us.pwcglobal.com

Thanks for the info Larry! Does the one script send all of the reports at
once to the DAS? This is new to me so sorry if this is a dumb question. We
will also have a scheduler but I didn’t realize it could send a script to
BusObj. Interesting…
–Cori


Listserv Archives (BOB member since 2002-06-25)

Cori,

    We have set up an Oracle table called milestones.  It has a status

field that indicates that the DW is done loading. I kick of my report at 2
am with a report script attached. The script queries the status of the DW
and runs in a loop until the status of the DW is finished, once the DW is
done loading, the script breaks out of the loop and begins printing.

    Best Regards,

                    -- Joel Klee
                    kleej@tce.com
                    317.587.3255

-----Original Message-----
From: corinne.griswold@US.PWCGLOBAL.COM
[SMTP:corinne.griswold@US.PWCGLOBAL.COM]
Sent: Tuesday, January 19, 1999 4:48 PM

Hi,

Has anyone implemented the scenario where DAS starts running reports as
soon as the warehouse is finished loading?


Listserv Archives (BOB member since 2002-06-25)

Hi Joel,

I would be interested in your reporting script triggering the start of DAS.
Do you mind posting it to this mailing-list?
Thanks in advance!
Best regards,
Andrea Halbherr
Novartis Crop Protection
andrea.halbherr@cp.novartis.com

   We have set up an Oracle table called milestones.  It has a status

field that indicates that the DW is done loading. I kick of my report at 2
am with a report script attached. The script queries the status of the DW
and runs in a loop until the status of the DW is finished, once the DW is
done loading, the script breaks out of the loop and begins printing.
– Joel Klee


Listserv Archives (BOB member since 2002-06-25)

    Here is the portion that triggers the start of the report.

    Sub CheckMilestone (reportpath as string)

dim dw_milestone, dw_last_date_completed, dw_currently_updated_yn as
String
dim i as integer
dim milestone_rptName as string
dim dw_delayed_yn as string

milestone_rptName = reportpath & “milestone.rep”

'rem milestone report for local Access db milestone_rptName = reportpath &
“milestone_local.rep”

’ Open Milestones report
Application.Documents.Open(milestone_rptName)
Application.Documents.Item(2).Refresh
dw_milestone =
Application.Documents.Item(2).DataProviders.Item(1).Columns.Item(“Milestone
Name”).Item(1)
dw_last_date_completed =
Application.Documents.Item(2).DataProviders.Item(1).Columns.Item(“Last Date
Completed”).Item(1)
dw_currently_updated_yn =
Application.Documents.Item(2).DataProviders.Item(1).Columns.Item(“Currently
Updated Yn”).Item(1)

Do while dw_currently_updated_yn = “N”
dw_delayed_yn = “Y” ’ indicates that the warehouse will be delayed
due to a load in progress
Application.Documents.Item(2).Refresh
dw_currently_updated_yn =
Application.Documents.Item(2).DataProviders.Item(1).Columns.Item(“Currently
Updated Yn”).Item(1)
Loop

If dw_delayed_yn = “Y” Then ’ dw has been delayed and the report will
need to be refreshed
Application.Documents.Item(1).Refresh
End If

End Sub

    Best Regards,

            -- Joel Klee
            317.587.3255
            kleej@tce.com

-----Original Message-----
From: (Andrea Halbherr) [SMTP:andrea.halbherr@CP.NOVARTIS.COM]
Sent: Tuesday, February 02, 1999 8:07 AM

Hi Joel,

I would be interested in your reporting script triggering the start of
DAS.
Do you mind posting it to this mailing-list?


Listserv Archives (BOB member since 2002-06-25)

Check what version of BO you are running. We were having problems with the objects.lsi getting corrupted or reports failing trying to write to this file sometimes all at once. This problem seems to have gone away with 4.1.4.

Always set the reports to try again if there are errors at least once just in case there are problems. Get the DocAgent Bible from the support page or send me a note directly and I will forward it to you it a great help in solving problems.

Hope this helps…

Sincerely,

Thomas Nather
Penske Logistics
email: Tom.Nather@Penske.com
(216)765-5787
Ph: 216-765-5787
Fax: 216-765-5666

“Darren Turland.” Darren.Turland@ARGOS.CO.UK 02/08 5:01 AM >>>
I am currently trying to develop a similar scheduling system, but have
encountered a problem.
The scheduling seems to work, and reports are being sent to DAS. The problem
arises when they are running. Each report fails with a ‘Dr. Watson’ just as
its completing (I knowthis from writing lines to a file).
Each report that is sent using the scheduler has a script attatched which
exports the document into the repository.
I can get round the failure if a put a MsgBox statement as the last line of
the attached script, but this is not acceptable.

Any ideas…


Listserv Archives (BOB member since 2002-06-25)

sorry but I have no solution to your problem, but I’m very interessted in
the script
that exports the report to the repository.
Is it possible to send it to me? (or to the list, as I guess it can be
usefull for others too)

Sub main
Dim ldocActiveDoc as BODocument
On Error goto ErrHandler

set ldocActiveDoc = Application.Documents.item(1)

’ Set repository and allow us to use it.
Application.ExchangeRepository = “<REPOS_NAME>”
Application.ExchangeMode = RepositoryMode

ldocActiveDoc.Send(“<NAME_OF_DOCAGENT_USER_OR_GROUP>”)
Exit Sub

Errhandler:
msgbox “and the error is:” & Err & chr_(10) & Error
End Sub


Listserv Archives (BOB member since 2002-06-25)