Вход | Регистрация

1С:Предприятие ::

Метки: 

1С 8,3 не видит txt-файл

Я
   margo2017
 
27.12.17 - 12:58
База находится на сервере PostgreSQL/Windows Server 2003
На рабочих компьютерах Windows 8.1

В документе есть "Процедура ПолучитьДанные". TXT-файл выбирается из каталога с помощью диалогового окна.
На сервере данная операция выполняется и файл подгружается без ошибок.
На рабочих машинах пишет "файл не обнаружен"

Причем ранее работали на 1С 8.1 такой ошибки не было.
 
  Рекламное место пустует
   Lexey_
 
1 - 27.12.17 - 13:00
(0) "На рабочих машинах пишет "файл не обнаружен""
естественно, на сервере же ищет
   Buster007
 
2 - 27.12.17 - 13:01
на сервере значит файл есть, а на клиенте его нет
   lavrov
 
3 - 27.12.17 - 13:01
Читай  про разделение данных на клиенте и сервере , если быть кратким , на сервер нет такой папки как на машине где ты выбираешь файл.
   RomaH
 
4 - 27.12.17 - 13:02
(2) наоборот
   lavrov
 
5 - 27.12.17 - 13:03
Сделай шару на сервере положи в нее файл и выбирай файл оттуда. Доступ на шару обязательно пользователю под которым запускается служба сервера 1с.
   RomaH
 
6 - 27.12.17 - 13:13
(5) месье знает толк в извращениях

(0) на клиенте помещаешь двоичные даннеы во временное хранилище
передаеш адрес на сервер

на сервере получаешь из временного хранилища и записываешь во временный файл
   margo2017
 
7 - 27.12.17 - 13:31
Файл находится в папке "Обмен" на всех машинах, путь в коде не прописан....
После перехода с 8.1 на 8.3 изменилось само диалоговое окно (на тех машинах где Windows 8.1), в нем не видно этого файла, хотя он там есть
   Рэйв
 
8 - 27.12.17 - 13:39
(7)Так вот он ты какой - суслик!
   Buster007
 
9 - 27.12.17 - 13:54
(4) хм, почему ты так решил, если "На сервере данная операция выполняется и файл подгружается без ошибок."?
   RomaH
 
10 - 27.12.17 - 14:17
(9) потому как файл выбирают на клиенте
а обрабатывают его на сервере

когда (0) выбирает файл "на сервере" - то кпросто контекст сервера и клиента совпадает - и файл для сервера находится там же где видит его клиент

а когда "на клиенте" - то клиент видит файл у себя на флешке 
а на сервере флешки нет
 
  Рекламное место пустует
   RomaH
 
11 - 27.12.17 - 14:21
(7) код показывай
у тебя что-то не понятное - пользователь файла не видит - что-то там выбирает (путь же не прописан) - но программа ругается, что файл не обнаружен
какой файл?
   margo2017
 
12 - 27.12.17 - 14:29
(11) Процедура ПолучитьДанныеИзКадровНажатие(Элемент)
    
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога);
    Диалог.Заголовок = "Выберите каталог с данными из программы по кадрам!";
    Диалог.ПолноеИмяФайла = "";
    Диалог.ПредварительныйПросмотр = Истина;
    Фильтр = "TXT (*.txt)|*.txt";
    Диалог.Фильтр = Фильтр;
    //Диалог.Фильтр = "MS Office|*.doc;*.docx;*.xls;*.xlsx|Все файлы (*.*)|*.*"; 

    Если Диалог.Выбрать() Тогда
        фКаталогЗагрузки = Диалог.ПолноеИмяФайла;
    Иначе
        Отказ = Истина;
        Возврат;
    КонецЕсли;
    
    имяФайла = СокрЛП(фКаталогЗагрузки) +  "uat_" + Строка(Месяц(Дата)) + "_" + Строка(Формат(Год(Дата),"ЧГ=0")) + ".txt";
    
    Текст = Новый ТекстовыйДокумент();
    Текст.Прочитать(имяФайла);
    ВсегоСтрок = Текст.КоличествоСтрок();
    
    тз = Новый ТаблицаЗначений;
    тз.Колонки.Добавить("Ключ");
    тз.Колонки.Добавить("Буква");
    
    для инд = 1 по ВсегоСтрок цикл
        лСтр = Текст.ПолучитьСтроку(инд);
        лСтр = СтрЗаменить(лСтр,Символы.Таб,Символы.ПС);
        
        тзСтр = тз.Добавить();
        тзСтр.Ключ = СтрПолучитьСтроку(лСтр,1);
        тзСтр.Буква = СтрПолучитьСтроку(лСтр,2);
    конецЦикла;
    
    КоличествоДней = ?(ТабельНаАванс,15,31);
    для каждого текСтрока из ОсновнаяТаблица Цикл
        
        для инд = 1 по КоличествоДней цикл
                текМетка = ПолучитьМеткуДня(тз,текСтрока,инд);    
                Если (текМетка <> "") Тогда
                    текСтрока["Л" + Строка(инд)] = текМетка;
                    текСтрока["О" + Строка(инд)] = "";
                КонецЕсли;
        конецЦикла;
        
        для инд = 1 по КоличествоДней цикл
            Если (СокрЛП(текСтрока["Л" + Строка(инд)]) = "") и (СокрЛП(текСтрока["О" + Строка(инд)]) = "") Тогда
                текСтрока["Л" + Строка(инд)] = "В";                
            КонецЕсли;
        конецЦикла;
        ПересчетРабочегоВремениПоСтроке(текСтрока);
        ПересчитатьСтроку(текСтрока);
//        текСтрока.Всего = текСтрока.НачисленоРемонт + текСтрока.Начислено + текСтрока.Классность + текСтрока.Доплата;

//        текСтрока.Всего = текСтрока.НачисленоРемонт + текСтрока.Ночные + текСтрока.Начислено + текСтрока.Классность + текСтрока.Доплата + текСтрока.ДоплатаЗаРаботуВВыходные + текСтрока.ДоплатаЗаСверхурочные + текСтрока.ДоплатаЗаЭкономиюТоплива;
        РассчитатьВсего(текСтрока);
    конецЦикла;
КонецПроцедуры
   RomaH
 
13 - 27.12.17 - 14:42
имяФайла - что возвращает после выбора?

каталог с расширением ".TXT"?
   RomaH
 
14 - 27.12.17 - 14:43
СокрЛП(фКаталогЗагрузки) + "\" + "uat_" + Строка(Месяц(Дата)) + "_" + Строка(Формат(Год(Дата),"ЧГ=0")) + ".txt";

??


Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует