Люди добрые!
Подскажите, сделал выборку, сформировал таб.док и нужно сохранить в определенную папку на сетевом диске. Но она заблокирована (Логин, пароль - данные для входа есть)) Просто как это все сделать? Если просто использовать ТабДок.Записать([путь и имя], [тип файла]) - то ругается на метод "записать" и пишет что ошибка доступа к файлу. Ну это понятно, необходимо авторизоваться, а как это сделать?
---
Ура товарищи! Все получилось, вина всему невнимательность изучения параметров подключения к сетевым дискам.
Надеюсь кому поможет!

WshShell = Новый COMObject("WScript.Shell");
WshShell.Run("net use z: \\synology\Adidas_SFTP [пароль]/user:[домен].[логин]");
net use - команда, обязательна
z: - может быть любая буква от d до z - это создастся такой диск и к нему привяжется сетевая папка(можно поставить *, тогда случайная буква будет)
\\synology - это мой адрес сетевого к которому я подключаюсь - имя сетевого диска(меняйте на свой))
\Adidas_SFTP - это каталог в который я вхожу на сетевом диске указанном выше(меняйте на свой если нужно, если нет, то не прописывайте))
 - потом обязательно пробел, без него будет неверный синтаксис
[пароль] - после пробела указываете пароль пользователя под которым будете подключаться
/user: - слеш стоит правильный, user - это постоянная команда, не меняется
[домен] - указываете домен через который подключаетесь (когда по адресу первый раз будете заходит на сетевой (если запаролен) то там потребуется ввести логин и пароль, а внизу будет указан домен(для тех кто не знает этого))
. - точка ставиться после домена если для входа к папке нужен логин и пароль
[логин] - логин пользователя под которым подключаетесь (если папка без логина и пароля, то собственно уберите их из строки
---
Подключи сетевой диск командой

```1c
    net use Z: \\server\folder /user:domain\admin password
```

потом записывай excel.

Т.е. вначале подключаем сетевой диск как локальный с буквой Z, а потом записываем.
После перезагрузки нужно будет снова подключать.

КомандаСистемы("net use Z: \\server\folder /user:domain\admin password")
---
анда
Я так понимаю что то вроде этого?
WshShell = Новый COMObject("WScript.Shell");
WshShell.Run("net use Z: \\synology\Adidas_SFTP/_QDxB.456/user:[пароль]");
---
Ошибся, там не пароль а "Логин"))
---
WshShell = Новый COMObject("WScript.Shell");
WshShell.Run("net use Z:\\synology\Adidas_SFTP/_QDxB.456/user:[Логин]");
Попытка
ТабДок.Записать("\\synology\Adidas_SFTPАдидас.XLSX", ТипФайлаТабличногоДокумента.XLSX);
Исключение;
Сообщить(ОписаниеОшибки());
КонецПопытки;

Такой код, и все равно, ошибка доступа(((
---
После исполнения кода, посмотрите подключился ли диск Z ?
На компьютере пользователя или на сервере 1с он подключился? (где исполняется код на клиенте или сервере)
---
WshShell = Новый COMObject("WScript.Shell");
WshShell.Run("net use Z:\\synology\Adidas_SFTP/_QDxB.456/user:[Логин]");
Между папкой и юзером пробел должен быть, хотя, может быть, это и не важно.
---
На сервере, обработка будет выгружать по расписанию. Нет, диск Z не добавился
---
Через командную строку Диск Z добавляется. И да, только с пробелом. Но с 1эсины пока что не подключает
---
Здесь https://forum.infostart.ru/forum71/topic156567/ всё подключилось.
---
Что получилось,
WshShell = Новый COMObject("WScript.Shell");
WshShell.Run("net use z: \\synology\Adidas_SFTP /user:sftp_3\[пароль]");

после отработки этого кода, появляется командная панель и требует ввести пароль (руками), но даже если его ввести то диск не подключается.
А если диск через Командную панель подключить заранее, то все сохраняет на отлично.
---
Ура товарищи! Все получилось, вина всему невнимательность изучения параметров подключения к сетевым дискам.
Надеюсь кому поможет!

WshShell = Новый COMObject("WScript.Shell");
WshShell.Run("net use z: \\synology\Adidas_SFTP [пароль]/user:[домен].[логин]");
net use - команда, обязательна
z: - может быть любая буква от d до z - это создастся такой диск и к нему привяжется сетевая папка(можно поставить *, тогда случайная буква будет)
\\synology - это мой адрес сетевого к которому я подключаюсь - имя сетевого диска(меняйте на свой))
\Adidas_SFTP - это каталог в который я вхожу на сетевом диске указанном выше(меняйте на свой если нужно, если нет, то не прописывайте))
 - потом обязательно пробел, без него будет неверный синтаксис
[пароль] - после пробела указываете пароль пользователя под которым будете подключаться
/user: - слеш стоит правильный, user - это постоянная команда, не меняется
[домен] - указываете домен через который подключаетесь (когда по адресу первый раз будете заходит на сетевой (если запаролен) то там потребуется ввести логин и пароль, а внизу будет указан домен(для тех кто не знает этого))
. - точка ставиться после домена если для входа к папке нужен логин и пароль
[логин] - логин пользователя под которым подключаетесь (если папка без логина и пароля, то собственно уберите их из строки
---
Я хочу Вам подсказать, на мой взгляд, самое лучшее решение. Сразу предупреждаю - я не программист 1С и с сетями не очень, но столкнулся с проблемой собрал всё в одно, скажем так и говорю Вам, ну тому кто тоже столкнулся с такой проблемой.
Исходные данные как у меня.
Изначально база была файловая - ах какое было время..... жил я счастливо и горя не знал. Генерировал прайс EXCEL - сохранял его командой
```1c
    ТаблДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.XLSX);
```
 куда хотел - да хоть на сетевой диск хоть на локальный - потом открывал это этот же сохраненный ЭКСЕЛ через ОЛЕ и вставлял в него ссылки, и снова сохранял
```1c
    Книга.Save();
```
.
Так прошли годы. Пользователей стало более 10 штук. И вот я перевожу всё это дела на клиент-серверный вариант 1С.
Всё это счастье престало работать !!!
Тут выше приводятся варианты решений - я Вам честно скажу - ну не нравится мне так решать проблемы, через такие "костыли". Я потратил день, и вот к чему пришел. Говорю как есть, так сказать, для понимания проблемы.
1) Важно четко понимать, что я установил СЕРВЕР на свой комп и что всё это добро работает под своей отдельной учеткой (USR1CV8 по умолчанию) - то есть как бы код выполняемый командой
```1c
    &НаСервере
    Функция ПрайсНаСервере(Ном,Цена) Экспорт
```
 будет реально выполняться именно от пользователя USR1CV8 - ну это такой скрытый пользователь как бы который занимается твоими 1Сными заданиями - втихаря можно сказать.
2) Соответственно - если ты хочешь куда то сохранить с сервера что то - то это что то точно так же должен уметь и иметь на это права сам пользователь USR1CV8 - то есть - если я сохраняю на сетевой диск - то у пользователя этот самый диск предварительно должен быть подключен и конечно права этому пользователю на запись должны быть.
Короче говоря, надоело всё объяснять. Пишу как вышел из ситуации я.
Я из под админа - разблокировал пользователя USR1CV8 для этого выполнить gpedit.msc и дальше удалить этого юзера из запрещающих разделов
Локальный компьютер»\Конфигурация компьютера\Конфигурация Windows\Параметры безопасности\локальные политики\Назначение прав пользователя\Отказать в доступе к этому компьютеру из сети (Это если ты по удаленке подрубаешься)
Локальный компьютер»\Конфигурация компьютера\Конфигурация Windows\Параметры безопасности\локальные политики\Назначение прав пользователя\Запретить локальный вход USR1CV8 (убрать если ты локально подрубаешься)
Я подключился удаленно - подрубил расшаренный диск сервера с файлами. И еще один момент - сделал папки desctop в System32 и SySWOW64 - эта инфа есть в интернете - думаю и так найдете, думаю они нужны и обязательно на них дать разрешение юзеру USR1CV8 !!
Ну вот и всё - у меня теперь всё работает как и хотелось. Надеюсь и у тебя всё получится !