Welcome, Guest
Username: Password: Remember me

TOPIC: Hyperlinks

Hyperlinks #1761

I am new to crystal reports and am totally lost using hyperlinks. I have created a report to show open request of a certain type and have the absense.hid field shown. Can I make that a hyperlink and get it to go to the request linked? If so, what would be the code to enter into the format field to do this?

Thanks,

Manville
The administrator has disabled public write access.

Hyperlinks #1762

  • pshirley
  • pshirley's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 54
  • Thank you received: 6
  • Karma: 1
Should be doable.

You'll need to replicate the Synergy URL for the corresponding request. I have a customer that I developed a SQL script for to attach Macola ES OE invoices to the customer's account in Synergy. On their aging reports, they then have a hyperlink on the invoice number field to take them to the Synergy PDF invoice copy directly in Synergy (assuming they have access). This is so that their internal staff and external reps can easily see the complete invoice detail when talking to customers about invoices.

This is done using the document ID field in bacodiscussions, so I'm sure you could do something similar to view requests. On the Hyperlink tab in Crystal select 'A Website on the Internet' as the Hyperlink Type. On the Hyperlink Information, use the X+2 formula button to build the URL. You may need to compare a few request URL's to build the syntax based on your database values. For my example above the code is;

if IsNull({bacodiscussions.ID})
then
""
else
"http://server/synergy/docs/BDBinDoc.asp?Id=" + {bacodiscussions.ID}


The IsNull check is to ensure that only invoices (in my example) that have documents in Synergy show hyperlinks. Those without just show as regular text on the report and clicking them does nothing.
Peter Shirley
www.erpessentials.com
The administrator has disabled public write access.

Hyperlinks #1763

I changed your example to the following.....

if IsNull({AbsenceTypes.ID})
then
""
else
"http://dataserver/synergy/docs/EPRequest.asp?Id=" + {AbsenceTypes.ID}

I get formula errors when it gets to the last {AbsenceTypes.ID}

It says a string is required here.

Am I doing something wrong?
The administrator has disabled public write access.

Hyperlinks #1764

  • Dkloepfer
  • Dkloepfer's Avatar
  • OFFLINE
  • Expert Boarder
  • Posts: 92
  • Thank you received: 2
  • Karma: 0
Another idea is to create an Custom List ASP Page on your Synergy site and have the hyperlinks go directly to the request. Take a look at these examples on my website. http://www.synergyexpert.com/FreeDownlo ... fault.aspx

We can also put in search filters into the ASP Page, such as a date range, specific request type, status, etc.

Dave Kloepfer
Dave Kloepfer
http://www.synergyexpert.com
dkloepfer@synergyexpert.com
[url=http://www.synergyexpert.com:2v9xq3t1]Tips, Tools & Manuals[/url]
The administrator has disabled public write access.

Hyperlinks #1767

  • pshirley
  • pshirley's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 54
  • Thank you received: 6
  • Karma: 1
mmichael618 wrote:
It says a string is required here.

Am I doing something wrong?

The AbsenceTypes table contains the request types, not the requests themselves; are you sure this is the table you want?

In any case, the AbsenceTypes.ID field is numeric, so you cannot add it to the URL string without first converting it to a string as well e.g.

"http://dataserver/synergy/docs/EPRequest.asp?Id=" + ToText({AbsenceTypes.ID},0,"")
Peter Shirley
www.erpessentials.com
The administrator has disabled public write access.

Hyperlinks #1773

Peter,

Thanks for this tip, it got me a little closer. Yes, I misstyped the abscensetype table. I am wanting it from the Abscences table. I changed it to this...

if IsNull({Absences.ID})
then
""
else
"http://dataserver/synergy/docs/EPRequest.asp?Id=" + ToText({Absences.ID})

I now get a new screen with a target line of this....
[url=http://dataserver/synergy/docs/JB_EPRequest_Redirect.asp?Id=DFE99FA0-797B-4FD0-9573-720A7F8A5402]http://dataserver/synergy/docs/JB_EPReq ... 0A7F8A5402[/url]

But my explorer screen says
Invalid: Request type

I really do appreciate your help.
The administrator has disabled public write access.

Hyperlinks #1775

  • AndyS
  • AndyS's Avatar
  • OFFLINE
  • Fresh Boarder
  • Posts: 5
  • Karma: 0
I just tried this and think you need an extra parameter in the url when calling eprequest.asp. You have to tell it you want Action=1

See if this works for you:

if IsNull({Absences.ID})
then
""
else
"http://dataserver/synergy/docs/EPRequest.asp?Action=1&Id=" + ToText({Absences.ID})


Best Regards,
Andy

btw - nice formula Peter! Thanks for sharing.
The administrator has disabled public write access.

Hyperlinks #1776

Andy,

Thank you for this addition. Now I get the following information.

Error (Request - Edit)
Failed to set input property value
Component: AbsenceData
Business component property: ID
Component property: ID
Value: C4A5F2FC-ED99-4438-B247-A82491499C33
Error: Failed to set property value
Component: AbsenceData
Business component property: ID
Component property: ID
Value: C4A5F2FC-ED99-4438-B247-A82491499C33
Error: Automation error Invalid advise flags

Any further ideas?
The administrator has disabled public write access.

Hyperlinks #1777

All,

I got it working with lots of thanks to you that posted replies. Thank you very much.

What finally worked is...

if IsNull({Absences.ID})
then
""
else
"http://dataserver/synergy/docs/EPRequest.asp?Action=1&Id={" + ({Absences.ID})&"}"
The administrator has disabled public write access.
Time to create page: 0.052 seconds
Powered by Kunena Forum  Protected by R Antispam