How to change wording on the site (e.g., rename field in the `Request new analyses` form)?

I want to change the name of Sample Condition field inside the Sample entity. As I understand, it’s possible to add/delete fields in the Request new analyses form, but it’s require source code changes or creation of add-on, which makes deploy and support of the application more sophisticated. Therefore, is it possible to change the field name to another (and keep functionality of the old field) without code change? Maybe it’s possible via Management Interface or Configuration Registry or by changing the localization file through LIMS UI?

I’m not sure about UI interfaces, but you can limit the amount of code changes you need to do. This would more-or-less defeat the purpose of the LIMS as a useful database, but you can try to edit these two to just change some labeling/ display info:
src/bika/lims/content/analysisrequest.py
src/senaite/core/browser/samples/view.py

I suggest you just search the Senaite.Core code for an adjacent field that you only find for the sample (like Customer Sample ID) and add your fields into all the code everywhere you find reference to that code. There are probably more clever ways to do this that don’t directly modify the source code, and I agree that it would be great to add Sample fields ad hoc from the UI.

As a disclaimer, I have not attempted the code edits mentioned, and I have not used all the add-ons that may have this ability. Lastly, you will have to re-deploy this updated code which is also a different struggle.

Hi,

better idea would be to change the fieldname’s translation, e.g. see senaite.core/src/senaite/core/locales at 2.x · senaite/senaite.core · GitHub.

I would recommend to establish an own addon, where you can override the standard translations in special cases.

Anecdotally, I did the exact thing I proposed by searching adjacent fields and adding mine next to them. It worked well. I now have custom fields, and searching through the code exposed the back-end API logic & variables which enabled me to replicate my (very similar) fields throughout the front and back ends.