Имя: Пароль:
1C
1С v8
Как понять под каким пользователем работает сервер 1с
0 Маленький Вопросик
 
09.09.12
17:46
Собственно проблемка.
Подключаюсь по рдп к удаленному серверу, где установлена УТ 11 на скл.
При подключении тащу с собой свой диск D. Запускаю УТ 11, запускаю обработочку, которая формирует файлик и пытаюсь его сохранить на диск D - нет доступа...

подскажите ходы решения данный проблемы. спасибо!
1 ilkoder
 
09.09.12
17:49
Посмотреть под какой учеткой запущен сервер 1С в списке служб сервера
2 ilkoder
 
09.09.12
17:50
если есть админские права
3 Маленький Вопросик
 
09.09.12
17:57
(2) а можно сделать, чтобы служба работала под текущей учеткой (у нее заведомо есть админские права)?
4 ДенисЧ
 
09.09.12
18:03
(3) Делай... Только лучше не надо
5 andrewks
 
09.09.12
18:05
(3) что значит "под текущей учеткой"? текущей вообще может не быть, а служба, тем не менее, будет работать
6 ilkoder
 
09.09.12
18:05
Лучше создай на диске д папочку и если есть права дай на нее полный доступ, только не напрямую к диску
7 ilkoder
 
09.09.12
18:06
в смысле всем полный доступ (но только к папочке)
8 ilkoder
 
09.09.12
18:08
ой стоп - ты же тащишь диск по рдп... наврядли локальная служба сервера получит доступ к локальному диску
9 Маленький Вопросик
 
09.09.12
18:09
(7) тут видишь в чем проблема - я подключаюсь под Юзер1 по рдп и под ним создается удаленный диск "Д" с папочками... а сервер работает под  ЮзерСервер... и поэтому он не видит этот диск "Д"
10 Маленький Вопросик
 
09.09.12
18:09
(8) а как тогда быть?
11 ilkoder
 
09.09.12
18:10
учетки доменные или локальные?
12 Маленький Вопросик
 
09.09.12
18:10
(11) локальные
13 ilkoder
 
09.09.12
18:12
если обработку на один раз запустить - то писать куда нибудь на диск сервера и если есть доступ забирать оттуда.
14 Маленький Вопросик
 
09.09.12
18:12
а нет ли какого механизма в управляемых формах, чтобы данные передать на клиент и уже клиент сохранит на нужный диск без проблем?
15 Маленький Вопросик
 
09.09.12
18:13
(13) ну это я знаю... бух будет копировать с Ц на Д... ну на крайний случай только...
16 ilkoder
 
09.09.12
18:14
если для буха, то просто типа отчет сформировать и пусть он его к себе сохраняет. Только не табличный документ, а текстовый документ
17 Маленький Вопросик
 
09.09.12
18:16
(16) файл с данными... в том то и дело что не отчет... отчеты сохраняются без проблем
18 Маленький Вопросик
 
09.09.12
18:27
ну что, есть у кого-нибудь какая-нибудь идейка?
19 ilkoder
 
09.09.12
18:28
в принципе же в управляемых формах можно из процедуры клиента вызвать процедуру сервера, только запутано там все очень...
20 Маленький Вопросик
 
09.09.12
18:28
может через дропбокс замутить вообще?
21 Маленький Вопросик
 
09.09.12
18:37
(19) я как раз вызываю из процедуры Клиента - процедуру сервера... которая выбирает данные и сохраняет их на диск...
22 ilkoder
 
09.09.12
18:42
выбери данные и верни клиенту, а из него сохрани на диск - поменять процедуру на функцию с возвратом
23 Маленький Вопросик
 
09.09.12
19:14
&НаСервере
Процедура СохранитьПоступленияТоваров(ПутьСохранения)
   
   
   КолвоДокументов=0;
   
   ДанныеXML = Новый ЗаписьXML;
   ДанныеXML.ОткрытьФайл(ПутьСохранения);
   ДанныеXML.ЗаписатьОбъявлениеXML();
   ДанныеXML.ЗаписатьНачалоЭлемента("ROOT");
   
   СлужебнаяИнформацияXMLФайла(ДанныеXML, "ПоступлениеТоваровУслуг",ЭтаФорма.ДатаНач, ЭтаФорма.ДатаКон, "");

   ДанныеXML.ЗаписатьКонецЭлемента();
   ДанныеXML.Закрыть();    
   
   
КонецПроцедуры

"На сервере" пишется XML файл - его надо тогда как-то запихнуть в память и передать эту переменную на клиент
24 V_V_V
 
09.09.12
20:03
Временное хранилище
25 Маленький Вопросик
 
09.09.12
20:06
(24) подскажи примерчик пожалуйста... прям очень надо, не хочеть заморачиваться со всякими дропбоксами и т.п...
26 V_V_V
 
09.09.12
20:14
Читай ПоместитьВоВременноеХранилище и ПолучитьИзВременногоХранилища. Гонять данные можно как с Сервера на Клиент, так и наоборот.
Открой БСП - там масса примеров работы с файлами
Давно возился, не помню уже всего. Как-то так:

Данные = Новый ДвоичныеДанные(ИмяФайла);
ПоместитьВоВременноеХранилище(Данные, Адрес);


Данные = ПолучитьИзВременногоХранилища(Адрес);
Данные.Записать(ИмяФайла);
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой