символ @ в Peoplecode

Я пытаюсь понять, почему он не позволяет мне прикрепить файл с определенной страницы в PeopleSoft CRM (он покажет ошибку, говорящую о том, что «вызов AddAttachment() не выполнен».), в то время как он позволяет мне пройти тест PeopleTools. Утилиты.

Кажется, проблема с URL-адресом.

Глядя на следы, больше всего мое внимание привлекли следующие строки:

  1. Правильная трассировка из тестовых утилит PeopleTools:

22: &RETCODE = AddAttachment(@(&URL_ID), &ATTACHSYSFILENAME, &FILEEXTENSION, &ATTACHUSERFILE, &FILESIZE);

EvalAddAttachment: processed URL catalog entry (on resume).

IsURLValid: masked specified FTP URL = http://localhost:8230/psfiletransfer/demo/crm/

GetLocalFilePath: temporary copy of file is /usrpsoft/demo/appserv/demo/files/psfileproc/A_de22a2f6-ffbf-11e0-8135-c80dfccab65c/borrador.txt
  1. Трассировка со страниц, которые возвращают ошибку:

24: &RETCODE = Добавить вложение(&URL_ID, &ATTACHSYSFILENAME, &FILEEXTENSION, &ATTACHUSERFILE, &FILESIZE);

IsURLValid: masked specified FTP URL = http://localhost:8230/psfiletransfer/demo/crm/

GetLocalFilePath: temporary copy of file is /usrpsoft/demo/appserv/demo/files/psfileproc/A_5da2dbaa-ffab-11e0-8135-c80dfccab65c/borrador.txt

Во-первых, что означает символ @ в Peoplecode?

В первой трассировке он появляется прямо перед параметром URL. Я просмотрел документы Peoplecode и не смог его найти.

И еще: вторая строка первой трассы не появится во второй трассе.

Кто-нибудь знает, что может происходить?

Спасибо!!!


person Neets    schedule 26.10.2011    source источник


Ответы (2)


Символ @ используется для динамической ссылки на объект, и в данном случае это URL-адрес. Ключ — это то, что находится в строке &URL_ID.

Если вы используете @(&URL_ID), то &URL_ID должно равняться URL.MY_URL. Если это для записи, это будет что-то вроде Record.MY_RECORD, например. &Rcd = GetRecord(@(&record)); или &Rcd = GetRecord(@("Record."| Record.MY_RECORD)); или &Rcd = GetRecord(@("Record.MY_RECORD"));.

Что касается этого «EvalAddAttachment», я не уверен на 100%. Хотя я бы не слишком беспокоился об этом. Просто попробуйте определить, что входит в вашу переменную (как 1-й, так и 2-й пример) &URL_ID.

person Andrew    schedule 26.10.2011

Я бы сделал трассировку или бросил бы в окно сообщений и посмотрел, что передается в &url_id. Он должен быть равен URL.MY_URL, как указано выше.

Если формат URL-адреса такой, то это связано с некоторыми другими вашими переменными, которые вы передаете в функцию.

person willard    schedule 08.11.2011