0
votes

I'm trying to fix a problem with a field having the "wrong case" in Lotus Quickr, and have received instructions from IBM telling me to do x, y, and z in order to delete, purge, then add the properly cased field back into the NSF. Those steps haven't worked, so I thought there might be a way to rename the field using the C API. Is there a C API function that I can call (perhaps from Lotusscript) to allow renaming a given field?

1
Can you show us the steps x, y and z that IBM asked you to follow? That way we'll know that we're not suggesting something to you that you already know doesn't work.Richard Schwartz
Hi Richard. Sure. Here's what they suggested: 1) run an agent against the document with the 'bad' field, and delete it using the @Deletefield formula command, 2) run a compact -c on the database, to remove the case sensitivity from the UNK, and then 3) run a Java agent on the specified document, creating a new field, using the proper case. --Al32767
Is the database full text indexed?Richard Schwartz
IMHO one step is missing: Remove the "bad" field from any Form / Subform / View in the design (if it exists). One question: Is Quickr really case sensitive in regard of item names? Domino for sure isn't...Torsten Link
At least in Lotusscript, if you create a field usning the backend classes, and the field does not exist on the form, it will be in all upper case. So make sure you have the field defined on the form.Karl-Henry Martinsson

1 Answers

1
votes

My understanding is that you have to remove all traces of the field to clear the UNK table :

1) Run agent to remove all items of that name in documents (use @DeleteField - presumably coipy to another field first if you need to save the value)

2) Remove field from all design elements (forms, subforms - views ?)

3) Remove FT index if there is one (I have read this has an effect, but unsure why)

4) Compact -c db to clear the UNK table of unused references

5) Re-add the field in a Form, with proper case and type (text/date/number etc). If you get the type wrong when recreating the field, this affects the FT indexer even if you change the type later.

6) Recreate FT index if required

I'm not sure why IBM recommend specifically a java agent to create the new field reference in the UNK table. I believe just adding it to a Form would recreate it.

Apologies but I don't knw whether this is possible from C api