2016-07-21 19 views
2

Я использовал аналогичный код ниже для запуска «общедоступных» запросов PeopleSoft из Excel с помощью VBA. Когда я смотрю на гиперссылку, полученную из приведенного ниже кода, она похожа на общедоступные запросы, которые мы запускаем с помощью этого метода. Единственное различие - это «частный» запрос. Я могу вручную запустить запрос в PeopleSoft с этими же приглашениями, и он запускает и производит результаты, как предполагается (32 строки). Однако, когда я запускаю этот код из Excel, открывается PeopleSoft, вы входите в систему, и похоже, что запрос выполняется. Однако он не возвращает никаких результатов (0 строк). Есть ли какие-то завихрения с запущенными «частными» запросами. Невозможно запустить «частные» запросы с помощью этого метода? Любые предложения будут высоко оценены, поскольку это нас превзошло. Спасибо за помощь ......Запуск PeopleSoft Query с Excel VBA Hyperlink

Мы используем Excel 2010, PeopleSoft 9,1 и PeopleTools 8,52, если это помогает

Dim vFROMACCT As Date 
Dim vTOACCT As Date 
vFROMACCT = "07/01/2016" 
vTOACCT = "07/21/2016" 
vFROMACCT = Format(vFROMACCT, "MM/DD/YYYY") 
vTOACCT = Format(vTOACCT, "MM/DD/YYYY") 
vHypRoot = "http://pswebfsprd.myco.com/fsprd_1/EMPLOYEE/ERP/q/?ICAction=ICQryNameExcelURL=PRIVATE.CAR_SALES_1" 

vHypLnk = vHypRoot 
vHypLnk = vHypLnk & "&bind1=" & vFROMACCT 
vHypLnk = vHypLnk & "&bind2=" & vTOACCT 

With Worksheets("Sheet1") 
.Hyperlinks.Add .Cells(10, 1), vHypLnk 
.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True 
End With 

ответ

1

Если вы получаете 0 результатов, то запрос выполняется. Я считаю, что ваша проблема связана с вашими параметрами даты. Я смог запустить частный запрос с параметром даты, но мне пришлось использовать дату в формате YYYY-MM-DD.

&BIND1=2016-07-21 

Это была версия DB2, поэтому она может отличаться для вашей БД. Если вам нужно использовать формат с косой чертой, убедитесь, что вы его кодируете перед отправкой. Вот Stack Overflow question on urlencoding in VBA

Мой полный URL был:

https://dev.removed.com/psp/mydev/EMPLOYEE/ERP/q/?ICAction=ICQryNameURL=PRIVATE.TEST_DS&BIND1=2016-07-21 

Примечание: Это было PeopleTools 8.54.13, но должен работать на 8,52

+1

@ Darryls99 ........... Спасибо за помощь. Вы были правы. Как только я изменил формат даты, я попросил его запустить. Это не работает в течение 100% времени, я все еще 0 результатов несколько раз, но это давало правильные результаты пару раз. Еще раз спасибо........ – Shaves