ОБСУЖДЕНИЕ

Os/400 Api, нужна помощь...

7 ответов 5,7 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Автор темы
Подскажите что нужно прописывать здесь для OS/400?
Как правило, всё тоже, что и для Win32.


Что-то вроде:

Код:
Public Type TIMEDATE
Innards(1) As Long
End Type

const NOTE_MODIFIED& = 4

Declare Public Sub OS400_NSFNoteGetInfo_Modified Lib "inotes" Alias "NSFNoteGetInfo" ( Byval hNote As Long, Byval note_member As Integer, ModifiedInThisFile As TIMEDATE)

Пригодится:
Код:
Declare Sub OS400_ConvertTIMEDATEToText Lib "inotes" Alias "ConvertTIMEDATEToText" (Byval IntlFormat As Long,Byval TextFormat As Long, actTIMEDATE As TIMEDATE, Byval retTextBuffer As String,Byval TextBufferLength As Integer,retTextLength As Integer)

Const MAXALPHATIMEDATE = 80

Function ConvertTIMEtoText(dt As TIMEDATE) As String

Dim spTime As String * MAXALPHATIMEDATE
Dim retLength As Integer

spTime = Space(MAXALPHATIMEDATE)
Call W32_ConvertTIMEDATEToText (&h0,&h0, dt, spTime,MAXALPHATIMEDATE,retLength)
ConvertTIMEtoText = Left$(spTime,retLength)
End Function
Звать так:

Код:
dim dt as TIMEDATE
Call OS400_NSFNoteGetInfo_Modified(doc.Handle, NOTE_MODIFIED, dt)
msgbox ConvertTIMEtoText(dt)
 
Private Type timeDateTYPE
innards(1) As Long
End Type

Declare Public Sub OS400_NSFNoteGetInfo_Added Lib "inotes" Alias "NSFNoteGetInfo" ( Byval hNote As Long, Byval note_member As Integer, AddedInThisFile As timeDateTYPE)

hNote& = doc.HANDLE
Dim tdStruct As timeDateTYPE

Сваливается вот на этом: Call OS400_NSFNoteGetInfo_Added(hNote&, 13, tdStruct)

error message: Error in loading DLL
 
Обращение к внешним функциям dll является unrestricted операцией. Соответственно, агенту и его подписанту надо дать права. Делается это в св-вах агента и в документе на сервер.
 
На сервере, где W32 работает, а вот на OS400 ни как(

*Делается это в св-вах агента и в документе на сервер.* В агенте права были, а что за *в документе на сервер*?
 

Вложения

  • 10.03.jpg
    10.03.jpg
    22,2 КБ · Просмотры: 536
В агенте права были, а что за *в документе на сервер

В серверной адресной книге для каждого сервера домена есть документ. В нём на закладке Security есть раздел в котором указывается кто может запускать анрестриктед агенты, а кто рестриктед. Подписант агента должен быть во втором поле.
 
нашел название библиотеки "/qsys.lib/qnotes.lib/libnotes.svrpgm". спасибо lmike*у.
но не работает, более того за вечер уже 4 раз повесил сервер этим агентом(
пробовал запускать на 2 серверах, агент даже не отрабатывае до конца. идет поиск Added по одном удокументу)

всем спасибо за советы.
 

Статистика тем

Создано
susinmn,
Последний ответ от
susinmn,
Ответы
7
Просмотры
5 696