If you encounter issues while working with the IDEA plugin, please report them to support@pricefx.eu. If possible, attach the IDEA log file to the message. The log file is located at Help > Show Log in Files/Explorer/Finder; idea.log is the current log file.
Table of Contents maxLevel 2
Why Auto-completion Is Not Working?
...
Pricefx Framework must be added to the project
Did Have you add added the Pricefx Framework support? You should Update Project Libraries once a major Studio or PFX version is released.
Re-activate GDSL script execution
...
once it
...
crashes
GDSL is IntelliJ's native DSL Groovy-based language for defining additional auto-completion rules. We don't know why, but sometimes the GDSL execution crashes (typically when switching branches) and then IDEA stops the auto-completion for all projects. Once this happens, navigate to the External Libraries > Pricefx API > logic-debug-xxxx-xx-xx.jar > PFXIdeaPublicGroovyAPI.gdsl in the project tree. If the auto-completion had probably has crashed, then you have to reactivate it by clicking a yellow popup with the button 'Activate back' in the yellow popupappears. Note that it may take a few seconds before the yellow popup appearscouple of seconds to appear. Once you press 'Activate back', the auto-completition is enabled again.
After pressing "Activate Back", you can also purge the IntelliJ cache: File > Invalidate Caches / Restart > Invalidate and Restart. This should force IntelliJ to rebuild caches for the API documentation.
Groovy Library elements folder needs to be marked as 'Source' for 'libs' to work
The auto-completion of methods in "libs
" works only if the "elements" folder is marked as "Source" in IDEA. All logic elements are created in the default package and therefore the parent folder "elements
" must be a root source folder. Best to do this in using right click on the root folder
...
> Open Module Settings
...
> Modules
...
> Sources.
The date suffix needs to be removed from Groovy Library name for 'libs' to work
The auto-completion of methods in "libs
" (resp. legacy lib
) does not work when the Groovy library is in a folder that is not a valid Java package name (= by default it has the date suffix "+YYYY-MM-DD
"). In that case, simply rename and remove the suffix part if you do not have a logic with different validFrom. This is safe to do, package tool does not use this information; it reads the 'validAfter' information from the logic.json.
Element names not unique
For cases when auto-completion does not work for referring elements either within the same logic or in libs
and (resp. legacy lib
): if you use two elements of the same name in the project, IDEA does not know which Class should be evaluated. Avoid having elements of the same name, so e.g. add a suffix "Utils" to the names of the Groovy library elements.
...