There is a ready base to which documents are entered in certain forms. In this form there is a field in which an entry from the list is added, after which this form is added (registered) to the database.
The bottom line is that this field should be made text (instead of choosing from the list) - done, now you make an entry in this field and have to add (register) the document to the database, but at this stage an error occurs that this field is not filled, although, again, it has data.
Actually the question: how to fix it? Where to pick? If in the code, it is lower:
Sub Click(Source As Button) Dim ws As New NotesUIWorkspace, cdoc As NotesDocument Set cdoc = ws.CurrentDocument.Document If ( cdoc.Form(0) = "edit_master" ) Then cdoc.Form = cdoc.source_form(0) Dim sc As Variant, Document As Variant, mxSenders As MixCollection Set sc = createServiceControl() Set Document = sc.getService( "DocumentManager" ).getDocObject( cdoc ) Select Case Lcase( cdoc.Form(0)) Case "doc_og", "doc_exp", "doc_in_ext", "search_exp", "search_in_ext" ,"search_og": Set mxSenders = sc.getService( "CorrespondentsManager" ).dialogSelectCorrespondent( False, cdoc.specialization (0) ) If ( mxSenders.Count = 0 ) Then Dim answer As Integer answer = Messagebox( "Внешний адресат не выбран. Желаете произвести ввести вручную?", 1 + 32, "" ) If ( answer = 1 ) Then Dim s As New NotesSession Dim dlg As New NotesDocument( s.CurrentDatabase ) dlg_point: If ( ws.DialogBox( "dlg_senders_handmade", True, True, False, False, False, False, "Ручной ввод данных", dlg, True, False, True )) Then If ( dlg.full_name(0) = "" ) Then Beep : Goto dlg_point cdoc.DocSenders = dlg.full_name(0) cdoc.DocSendersID = CORRESPONDENT_ID_HAND_MADE Exit Sub End If End If End If Case Else : '"doc_ord", "doc_in_int", "doc_out_ext", "doc_out_int": Set mxSenders = sc.getService( "StaffManager" ).dialogSelectPerson( True ) End Select If ( mxSenders.Count = 0 ) Then Call cdoc.RemoveItem ("DocSenders") Call cdoc.RemoveItem ("DocSendersID") Exit Sub End If Dim mxVal As New MixCollection, mxID As New MixCollection, mxSpec As New MixCollection Dim mxAddreses As New MixCollection Forall elm In mxSenders.Array Call mxID.Append( elm.id ) Select Case Lcase( cdoc.Form(0)) Case "doc_og", "doc_exp", "doc_in_ext": Call mxVal.Append( elm.title ) Call mxSpec.AppendCollection( elm.specializations ) If cdoc.Form(0) = "doc_og" Then Call mxAddreses.Append( elm.legal.full ) End If Case Else: Call mxVal.Append( elm.displayName ) End Select End Forall cdoc.DocSenders = mxVal.Array cdoc.DocSendersID = mxID.Array 'If cdoc.Form(0) = "doc_og" And mxAddreses.Count > 0 Then cdoc.replyTo_Address = Join(mxAddreses.Array, Chr(13)) ' bug RR3000007033 ' Формируем список специализаций Select Case Lcase( cdoc.Form(0)) Case "doc_og", "doc_exp", "doc_in_ext": If ( mxSpec.Count = 1 ) Then cdoc.specialization = mxSpec.Element(1) Elseif ( mxSpec.Count > 1 ) Then Dim choiceSpec As Variant choiceSpec = ws.Prompt( 4, "", "", mxSpec.Element(1), mxSpec.Array ) If Not Isempty( choiceSpec ) Then cdoc.specialization = choiceSpec End If End Select Call ws.CurrentDocument.Refresh End Sub As I understand it, you need to add a parameter here that says that manual data entry is possible!