|   |   | 
| 
 | Как выполнить powershell скрипт из 1С и вернуть обратно данные? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Бешеный заяц 03.08.21✎ 16:29 | 
        Есть powershell скрипт который стучится к SharePoint и забирает данные, используются библиотеки по этому напрямую в 1С минуя powershell немогу     | |||
| 1
    
        Бешеный заяц 03.08.21✎ 16:29 | 
        вариант блокнот не очень хороший     | |||
| 2
    
        Kassern 03.08.21✎ 16:32 | 
        а через это дело разве нельзя напрямую из 1с? https://docs.microsoft.com/ru-ru/sharepoint/dev/spfx/connect-to-sharepoint     | |||
| 3
    
        Garykom гуру 03.08.21✎ 16:35 | 
        (0) программиста нанять не пробовали?     | |||
| 4
    
        Бешеный заяц 03.08.21✎ 16:41 | 
        (2) нет у нас проблемы с авторизацией, админ грамотно доступ настроить не может     | |||
| 5
    
        Garykom гуру 03.08.21✎ 16:43 | 
        покажи уже свой "powershell скрипт" затерев логин/пароль     | |||
| 6
    
        Kassern 03.08.21✎ 16:47 | 
        (4) ну так не изобретайте велосипедов, используйте стандартные механизмы 1с и вправьте руки сисадмину.     | |||
| 7
    
        Бешеный заяц 03.08.21✎ 16:51 | 
        (5) 
 #Load SharePoint CSOM Assemblies Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll" Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll" $SiteUrl = "https://мойСайт/sites/applications/" $ListName = "624060e9-5c12-40d8-9a81-f7ad7aeeed2f" $Username = "ИмяПользователя"; $AdminPassword = ConvertTo-SecureString "Пароль" -AsPlainText -Force #Get Credentials to connect #$Cred = Get-Credential #Setup the context $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL) $Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Username, $AdminPassword) #Get the list #$List = $Ctx.Web.Lists.GetByTitle($ListName) $List = $Ctx.Web.Lists.GetById($ListName) #sharepoint online powershell read list items $ListItems = $List.GetItems([Microsoft.SharePoint.Client.CamlQuery]::CreateAllItemsQuery()) $Ctx.Load($ListItems) $Ctx.ExecuteQuery() Write-host "Total Number of Items Found in the List:"$ListItems.Count #Iterate through List Items ForEach($Item in $ListItems) { #sharepoint online powershell read list items Write-Host ("List Item ID:{0} - Title:{1}" -f $Item["ID"], $Item["Title"]) #Write-Host ($Item.FieldValues); } Мне нужно $Item вернуть или даже $ListItems (смотря в каком виде вернет) | |||
| 8
    
        Garykom гуру 03.08.21✎ 16:58 | 
        https://www.cnblogs.com/PeterHome/p/7009998.html
 прокси на C# или Использование классов .Net в 1С для новичков если сборки представляют собой COM объекты то можно и напрямую из 1С попытаться | |||
| 9
    
        Garykom гуру 03.08.21✎ 16:58 | 
        (8)+ но имхо лучше через "REST/OData endpoints"     | |||
| 10
    
        Garykom гуру 03.08.21✎ 17:01 | 
        (7) еще простейший вариант это модификация сценария чтобы данные в csv (или нечто вроде) выдавал
 а из 1С делать ЗапуститьПриложение() или КомандаСистемы() и читать результат | |||
| 11
    
        Feanor 03.08.21✎ 17:44 | 
        ВыполнитьКомандуСистемы не подходит?     | |||
| 12
    
        Feanor 03.08.21✎ 17:45 | 
        Еще вроде можно через COM создать оболочку и запустить скрипт     | |||
| 13
    
        Бешеный заяц 03.08.21✎ 21:44 | 
        (11) Данные как вернуть?     | |||
| 14
    
        Garykom гуру 03.08.21✎ 21:59 | 
        (13) дык 1С через параметр передает в скрипт полное имя файла, скрипт пишет в этот файл, 1С после завершения скрипта читает
 при начале скрипта файл очищать и/или писать нечто при ошибках, чтобы 1С если что поняла | |||
| 15
    
        Сеньор Программист 03.08.21✎ 22:42 | 
        (0) Посмотри в типовых. Там есть пример запуска приложения     | |||
| 16
    
        Сеньор Программист 03.08.21✎ 22:46 | 
        +(15)
 Функция ЗапуститьПрограмму(Знач КомандаЗапуска, ПараметрыЗапускаПрограммы = Неопределено) Экспорт | |||
| 17
    
        Бешеный заяц 04.08.21✎ 07:59 | 
        через выгрузку это не кошерно, нашел ActiveXPoshV3x64 с помощью неё можно запускать и тут же забирать ответ в 1с, сегодня буду раскуривать её.     | |||
| 18
    
        Feanor 04.08.21✎ 14:23 | 
        (13) перенаправить вывод в файл и прочитать этот файл     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |