upload souborů pomocí úhlových js v prostředí Lotus Notes html formulář

hlasů
1

Já používám Lotus Notes formě jako soubory HTML a já posílám hodnoty na serveru jako JSON pomocí úhlových JS. Ale já chci, aby vkládat i nyní. Jak mohu posílat soubory na server a extrahovat pomocí lotosový scénář?

Můžete mi prosím, pomozte mi někdo?

Jako pod poštou. Ale je to v ASP.NET. Chci dělat stejné pomocí Lotus Notes.

nahrávání souborů úhlová js ASP .NET

index.html

<span ng-if=quests.type == '17'>
<input type=file file-upload multiple id='`quests`.`id`'/>
</span>

<button type=button ng-click=submitForm();>Submit</button>

Tlačítko nad spustí následující kód popraven.

Hranatý kód poslat na serveru

var email=document.getElementById(email).value;
var message={requesttype: saveForm,email: emailid,username: username};
$http.post(http://test.com/ajaxprocess?openagent, message).success(success).error(failure);

Výše uvedený prostředek (LotusScript) se analyzuje výše JSON a uložení dokumentu, jak je uvedeno níže.

ajaxprocess Agent kód

'getting document context
Set docContext = sess.DocumentContext
If docContext.hasItem(REQUEST_CONTENT) Or docContext.hasItem(REQUEST_CONTENT_000) Then
    'using openNTF lotus script classes to parse document to json object
    Set userDataInfo=getJSONObjectFromDocument(docContext, )
    Dim fieldsobj As New JSONArray
    'getting the fields array sent as json array
    Set fieldsobj=userDataInfo.GetItemValue(fields)
    fieldtype=Field.mGetItemValue(type)(0)
    Dim doc As NotesDocument
    Dim fieldname As String
    ForAll Field In fieldsobj.Items
        fieldname=Field.mGetItemValue(Fieldname)(0)
        Call doc.Replaceitemvalue(fieldname,Field.mGetItemValue(value)(0))
    End ForAll
    call doc.save(true,false)
End If

Vše funguje očekávat souborů příloh. Jak mohu posílat soubory na server pomocí JSON a uložit pomocí lotosový skript nebo je nějaké jiné řešení je tam?

Položena 12/05/2015 v 07:32
uživatelem
V jiných jazycích...                            


2 odpovědí

hlasů
1

Konečně jsem našel tip a udělal řešení takto získat base64 řetězec a převést na přílohu v LotusScript.

http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/creating-a-mime-email-with-attachment?opendocument&comments

Dim s As New NotesSession
 Dim stream As NotesStream
 Dim body As NotesMIMEEntity
 Dim header As NotesMIMEHeader
 Dim StringInBase64 As String
 StringInBase64=getbase64() 'your base64 string
 Dim db As NotesDatabase
 Set db=s.Currentdatabase
 Dim tempdoc As NotesDocument
Set tempdoc=db.Createdocument()
Set stream = s.CreateStream
Call stream.WriteText(StringInBase64)
Set body = tempdoc.CreateMIMEEntity
Set header = body.createHeader("content-disposition")
Call header.setHeaderVal({attachment;filename="Onchange.xlsx"}) ' file name and type should be configurable
Call body.SetContentFromText(stream, "", ENC_BASE64)
Call stream.Close
tempdoc.form="Attachment"
Call tempdoc.save(True,False)

Tato metoda funguje, jak se očekávalo. Díky všem za dobu, po kterou strávil.

Odpovězeno 21/09/2015 v 16:03
zdroj uživatelem

hlasů
1

Zde je kód pro více příloh, zvýšení z Vijayakumar.

Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim doc As NotesDocument
    Set db = session.CurrentDatabase
    Set doc = db.CreateDocument
    Dim s As New NotesSession
    Dim stream As NotesStream   
    Dim body As NotesMIMEEntity
    Dim child As NotesMimeEntity
    Dim header As NotesMIMEHeader
    Set body =  doc.CreateMIMEEntity


    topString = Split(BASE64, ",")

    Dim tmp_array() As String
    i = 0

    For i = 0 To Ubound(topString)
        Redim Preserve tmp_array(i)
        tmp_array(i) = topString(i)


        Set child = body.CreateChildEntity()
        Set header = child.CreateHeader("Content-Type")
        Call header.SetHeaderVal("multipart/mixed") 
        Set header =child.createHeader("Content-Disposition")
        Call header.setHeaderVal({attachment; filename=test} &Cstr(i)& {.jpg}) 'file name and type should be configure


        Set header =child.CreateHeader("Content-ID")
        Call header.SetHeaderVal("test" &Cstr(i)& ".jpg")

        Set stream = s.CreateStream()
        Call stream.WriteText(topString(i))
        Call child.SetContentFromText(stream, "", ENC_BASE64)

    Next

    doc.form="Attachment"
    'doc.Attachment = tmp_array 
    Call doc.save(True,False)
    Call stream.Close() 
    s.ConvertMIME = True ' Restore conversion
Odpovězeno 02/08/2016 v 01:54
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more