Текущее время: Вт, июн 17 2025, 16:08

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: VBA. Как загрузить текстовый файл в SAP post-запросом?
СообщениеДобавлено: Чт, окт 17 2024, 11:37 
Начинающий
Начинающий

Зарегистрирован:
Пт, окт 11 2024, 09:33
Сообщения: 1
Привет, подскажите, пожалуйста, как загрузить txt файл c данными в SAP post запросом, аналог загрузки данных из текстового файла?

пробовала расширение csv и txt
ниже привожу код, который работает, но вставляет абракадабру в поле вместо числа: "\u365B\u3034\u3030\u3030\u3232\u6E5C\u362C\u3034\u3030\u3030"

Code:
Dim formData        As String
Dim fileSize        As Long
Dim file            As String
Dim filePath        As String
Dim boundary        As String
filePath = "D:\Макросы\WebSAPtest\PY.csv"
file = "PY.csv"
' Получение размера файла
fileSize = FileLen(filePath)

' Генерация случайной границы
boundary = "----WebKitFormBoundary" & GenerateBoundary()

formData = "--" & boundary & vbCrLf
formData = formData & "Content-Disposition: form-data; name=""updownbase64in""" & vbCrLf & vbCrLf
formData = formData & vbCrLf
formData = formData & "--" & boundary & vbCrLf
formData = formData & "Content-Disposition: form-data; name=""updownchunkstatusin""" & vbCrLf & vbCrLf
formData = formData & vbCrLf
formData = formData & "--" & boundary & vbCrLf
formData = formData & "Content-Disposition: form-data; name=""updownfilesize""" & vbCrLf & vbCrLf
formData = formData & fileSize & vbCrLf
formData = formData & "--" & boundary & vbCrLf
formData = formData & "Content-Disposition: form-data; name=""LOCALFILE1""; filename=" & file & "" & vbCrLf
formData = formData & "Content-Type: application/octet-stream""" & vbCrLf & vbCrLf
formData = formData & ReadFileContent(filePath) & vbCrLf
formData = formData & "--" & boundary & "--" & vbCrLf

' Отправьте запрос
xmlHttp.Open "POST", "http://" & sap_web_server & link & "post", False
xmlHttp.setRequestHeader "Content-Type", "multipart/form-data; boundary=" & boundary
xmlHttp.setRequestHeader "Referer", "http://" & sap_web_server_forDownload & "/sap(" & link_token & ")/bc/gui/sap/its/webgui?charset=UTF-8"
xmlHttp.send formData


также привожу код на питоне, который работает как надо:
Code:
with open(os.path.join(input_folder, 'exceptions.txt'), 'rb') as exceptions_file:
    r=session.post(f"http://{sap_web_server}{link}post",
        files={'exceptions.txt': exceptions_file},
        params={'SEC_SESSTOKEN': sessiontoken,
                'updownchunkstatusin': '',
                'updownbase64in': '',
                'LOCALFILE1': '(binary)'})


подскажите, что я делаю не так и как надо на VBA?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB