I have a requirement to show the hyperlink when exported to excel from record grid . The associated DB column has a either a DOC Id or a url .
By exporting ,few fields are shown as desired (both label name with hyperlink), few are just shown with with label and no hyperlink and few are entirely skipped to show the excel.
I have the following sample code.. Is something wrong here?
a!gridColumn( label: "File Name", value: a!linkField(
links:a!safeLink( label: fv!row['recordType!record.fieldname], uri: if( left(fv!row['recordType!record.docImage], 10 ) = "[Document:", document( todocument(fv!row['recordType!record.docImage]), "url" ),fv!row['recordType!record.docImage] )), showWhen:a!isNotNullOrEmpty(fv!row['recordType!record.docImage]),
showwhen:false exportWhen: true, align: "START" ),
Thanks
Discussion posts and replies are publicly visible
The link label is derived from a record "fieldname" value. To ensure the link label appears correctly, all records must have a valid (non-empty) value for that field. If the fieldname is blank, those records will be skipped entirely and no link label will be displayed.
For the URI, there is a conditional logic implemented:
It checks whether the docImage field contains the string "[Document".If this condition is true, the system retrieves and displays the document URL. (both label name with hyperlink) If the condition is not met, it will show docImage and link will not accessible.
So overall, both the link label and URI behavior are entirely driven by the underlying record data and conditional logic.
Remove duplicate showWhen: false, and convert to document URL only when the value is truly a Doc Id; otherwise keep it as the plain URL.
The code has showwhen configured twice! So that is something to fix. Also, one of the showWhen condition checking value for docImage whether its null or empty seems to be the cause behind behavior that label is shown without any link. So verify that values might be blank or null in the docImage column so the behavior might be correct.
showwhen: false is not a duplicate . This parameter is being used to hide the column in the UI and I am only exporting it . Yes I am converting to doc url only if it has Doc Id , otherwise its the url itself. But this is somehow not working
showwhen: false is not a duplicate . This parameter is being used to hide the column in the UI and I am only exporting it.
The doc Image value is not empty but its still not showing in the export
The issue seems to be is your uri logic, Some docImage values are not becoming one valid hyperlink, so Excel exports only the label or leaves the cell blank.Validate the failing rows first and check whether docImage contains a proper external URL or a valid Doc Id, because a!safeLink() needs one valid URI per cell and Excel supports only one hyperlink per cell.