| | Discusiones Técnico Compatibilidad ... | |
|
| | |
Re: Compatibilidad con Lotus Notes Posted: 02 feb 07 1:41 (Spain) |
| | |
Hola,
¿nadie sabe cómo hacer que se envíen de forma transparente los correos a través de Lotus? ¿ni tan siquiera Nilsm? :-)
un saludo |
| |
| | |
Re: Compatibilidad con Lotus Notes Posted: 12 feb 07 2:41 (Spain) |
| | |
Ramon wrote Hola a todos,
yo he implementado éste código:
IF CREATE(sesion) THEN; //variable tipo 'Lotus Domino Objects'.NotesSession IF CREATE(MailDB) THEN; //variable tipo 'Lotus Domino Objects'.IDatabase IF CREATE(MailDoc) THEN; //variable tipo 'Lotus Domino Objects'.IDocument IF CREATE(MailText) THEN; //variable tipo 'Lotus Domino Objects'.IRichTextItem
sesion.Initialize('el password'); MailDB := sesion.GetDatabase('ruta del servidor o PC','ruta del *.nsf',TRUE); MailDoc := MailDB.CreateDocument;
//hasta aquí no tengo ningún problema pero el siguiente código me da un error y me cierra Navision y Lotus sin más. //si lo tengo comentado no da error pero tampoco envia correo (evidentemente) //código que da error: MailText := MailDoc.CreateRichTextItem('texto de prueba'); MailDoc.AppendItemValue('SendFrom','dirección correo1'); MailDoc.AppendItemValue('SendTo','dirección correo2'); MailDoc.AppendItemValue('Subject','el asunto...'); MailDoc.Send(FALSE); //con send o false falla igualmente //final del código que da error
CLEAR(sesion); CLEAR(MailDB); CLEAR(MailDoc); CLEAR(MailText);
pues hasta aquí he llegado y aquí me he quedado, si alguien sabe darme alguna idea de cómo solucionarlo, lo agradecería.
gracias |
Hola Ramón. Perdona pero he andado un poco lejos de este foro desde hace un tiempo. Creo que el problema que tienes es la llamada a la funcion Send del MailDoc. Prueba a pasar (False,Recipient) donde Recipient es una variable de tipo variant que contiene la direccion de correo de destino.
Pruebalo y me comentas. |
| |
| | |
Re: Compatibilidad con Lotus Notes Posted: 13 feb 07 2:15 (Spain) |
| | |
Hola inkylino, he hecho:
Recipient := 'dirección de correo' //tipo variant MailDoc.Send(FALSE,Recipient);
pero continua dando el mismo error:
--------------------------- NSD --------------------------- NSD Is Running Saving to file C:\Archivos de programa\lotus\notes\data\IBM_TECHNICAL_SUPPORT\nsd_all_W32I_PCXAVIM_02_13@09_09.log
This file may be used by your company's help desk and IBM to determine the possible cause of this Notes error.
Please make note of the name of this file and its location as you may be asked to provide this file as part of the problem determination effort. --------------------------- Aceptar --------------------------- |
| |
| | |
Re: Compatibilidad con Lotus Notes Posted: 15 feb 07 1:18 (Spain) |
| | |
Hola Ramón. Te dejo aquí el código que implementé yo. Espero que te sirva. Un saludo.
SendNotesMail(Subject : Text[50];Attachment : ARRAY [2] OF Text[250];Recipient : Variant;BodyText : Text[1024];DatosUsuario : ARRAY [2] CREATE(Session);
Users.GET(DatosUsuario[1],DatosUsuario[2]);
Session.Initialize(Users.PasswordNotes); UserName := Session.UserName; MailDB := Session.GetDatabase('xxx.xxx.xxx.xxx','mail\pservpri.nsf'); las x son la direccion ip IF NOT MailDB.IsOpen THEN MailDB.Open();
MailDoc := MailDB.CreateDocument; MailDoc.AppendItemValue('Form','Memo'); MailDoc.AppendItemValue('Subject',Subject); MailDoc.AppendItemValue('Body',BodyText);
MailDoc.Save( TRUE, TRUE ); MailDoc.SaveMessageOnSend := TRUE;
IF (Attachment [1] <> '') THEN// AND (Attachment [2] <> '') THEN BEGIN AttachME := MailDoc.CreateRichTextItem('Attachment'); EmbedObj := AttachME.EmbedObject(1454, '', Attachment[1], 'Attachment'); //ruta del adjunto. EmbedObj := AttachME.EmbedObject(1454, '', Attachment[2], 'Attachment'); //ruta del adjunto. END;
//Enviamos el correo. MailDoc.Send(TRUE,Recipient); CLEAR(Session); CLEAR(MailDoc); CLEAR(MailDB); CLEAR(AttachME); CLEAR(EmbedObj);
|
| |
| | |
Re: Compatibilidad con Lotus Notes Posted: 20 feb 07 9:35 (Spain) |
| | |
Hola Inkylino,
mirando tu código y el de Ramón he conseguido hacer lo siguiente:
//instanciación de las variables IF CREATE(Session) THEN; IF CREATE(MailDB) THEN; IF CREATE(MailDoc) THEN; IF CREATE(attachME) THEN;
Session.Initialize('el password'); MailDB := Session.GetDatabase('IP del servidor','archivo .nsf'); IF NOT MailDB.IsOpen THEN MailDB.Open();
MailDoc := MailDB.CreateDocument; MailDoc.AppendItemValue('SendFrom','dirección origen'); MailDoc.AppendItemValue('SendTo','dirección para'); MailDoc.AppendItemValue('CopyTo','dirección CC'); MailDoc.AppendItemValue('Subject','el asunto');
attachME := MailDoc.CreateRichTextItem('Attachment'); attachME.EmbedObject(1454,'','ruta del archivo','Attachment');
MailDoc.Send(FALSE); MailDoc.Save(TRUE,TRUE); MailDoc.SaveMessageOnSend := TRUE;
CLEAR(Session); CLEAR(MailDoc); CLEAR(MailDB); CLEAR(attachME);
a mi me funciona correctamente |
| |
| | |
Re: Compatibilidad con Lotus Notes Posted: 10 abr 07 5:26 (Spain) |
| | |
| |
| | |
Re: Compatibilidad con Lotus Notes Posted: 10 abr 07 5:27 (Spain) |
| | |
|
Ya lo he solucionado. Todo esta en la api de Notes. Hay que registrar la dll (regsvr32 C:\Program Files\Lotus\Notes\nlsxbe.dll). y se usan los metodos de notes.
Quiero decir como se hace para registrar la dll nlsxbe.dll de Lotus Notes en Navision?
Roger | |
| |
| | |
Re: Compatibilidad con Lotus Notes Posted: 10 abr 07 5:50 (Spain) |
| | |
abre una ventana del simulador de DOS (Inicio -> Ejecutar -> escribres cmd) desde esta ventana accede al path que contiene el archivo nlsxbe.dll de lotus (en mi caso , p.ej es C:\Archivos de programa\lotus\notes). Una vez aqui escribe regsvr32 nlsxbe.dll, y te ha de salir un mensaje conforme la dll se ha registrado correctamente. |
| |
| | Discusiones Técnico Compatibilidad ... | |
| | | |
| | | |
| | | |