Custom Function List
A Draft has an associated list of Custom Functions which can be accessed from the Draft Objects table on the Draft home page.
The Custom Function list displays the name and language of the Custom Function, and the Edit Checks and Derivations in which the Custom Function is used.
The Source Code can be displayed by clicking on the expand row icon in the left column.
The list can be search by the name of the custom function, and/or the source code can be searched (case insensitively).
Rave API and V2 Conversion
For C# Custom Functions, the API column shows the Medidata Rave API the Source Code uses: V1, V2, Mixed (both) or None (neither). The V2 Conversion column shows, for those using V1, whether converting them is Automatic or Manual, as described on the Custom Function page. If converting a function has been tried and it couldn't be converted, the column shows the reason instead; hover over it for the detail.
The filter section has a filter for each: the API filter shows only functions using V1, V2, both or neither, and the V2 Conversion filter's 'Flagged' button shows only functions that couldn't be converted. The V2 Conversion filter is shown if your Organization is licensed to convert Custom Functions.
The Actions column displays the Custom Functions it calls (as CF: <name>) and the actions it performs, found
by parsing its C# source. Code in comments is ignored, and text inside strings is never mistaken for code. Both the
V1 and the V2 Medidata Rave API are recognised:
Action |
V1 |
V2 |
|---|---|---|
Query |
|
|
Comment |
|
|
Sticky |
|
|
DataPageRequiresSignature |
|
setting |
DataPointRequiresSignature |
|
(none) |
AddCRF |
|
|
SendEmail |
|
|
DynamicSearchList |
|
|
Enter, AddMatrix, MergeMatrix, SetTimeForward, SetInstanceName, SetDate, SetNonConformant |
a call of the method with that name, e.g. |
the same |
Active |
assigning |
|
IsVisible |
assigning |
assigning |
SubjectStatus, Name |
assigning that member of an object, e.g. |
the same |
Names are matched exactly: a method called ReEnter is not an Enter action, and a local variable called Name
is not a Name action.
Converting to the V2 API
To convert C# Custom Functions from the V1 to the V2 Medidata Rave API, select them and choose "Convert to V2 API" from the "Actions" menu. The action is shown if your Organization is licensed to convert Custom Functions; see Converting to the V2 API for what uses a conversion. Only the selected functions that use V1 are counted and converted; Custom Functions linked to them by calls are converted with them. The conversion runs in the background, and its progress window has a Cancel button. See Converting to the V2 API for what is checked before a conversion is saved, and How Custom Functions are converted for the changes made.
A Custom Function that couldn't be converted shows its reason in the V2 Conversion column; hover over it for the detail. The "Flagged" filter shows only those Custom Functions.
Generating Documents
If your URL has Document Templates defined for Custom Functions, a "Documents" entry appears in the "Actions" menu above the list. The generated document receives the Custom Functions you have selected with the row checkboxes, and those matching whatever search and filters are active, so a report can cover just the part of the list you are looking at.