Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 17:03

Изменение элементов справочника в выборке

Автор Zeratul, 25 ноя 2010, 11:05

0 Пользователей и 2 гостей просматривают эту тему.

progmikon

Да... это код для загрузки. А сейчас то мы о другом говорим.
Запостите ваш код по изменению кода :) элемента.

Zeratul

Вверху все тоже самое

КартКор = Справочники.КарточкаКоровы.Выбрать();
            Пока КартКор.Следующий()Цикл
            Объект = КартКор.ПолучитьОбъект();
            Объект.Код ="ДРЖ-"+ КодЖивотного;
           Объект.Приметы = Приметы;

и т.д и т.п
КонецЦикла
Попытка
Объект.Записать()
Исключение
КонецПопытки;

progmikon

А откуда вы берете эти переменные: Приметы, Код и т.п.?

Zeratul

из экселя
КодЖивотного      = СокрЛП(Excel.Cells(а,НомерКолонкиНомерЖивотного).Value);

progmikon

Интересно, а как вы в экселе находите нужный элемент?

Давайте переведем разговор в более конструктивное русло. Запостите полностью ваш код перезаписи.ПОЛНОСТЬЮ!

Zeratul

     //Номер листа в книге Excel для получения данных
   НомерЛиста   = 7;
//   
   //Пытаемся подключиться к Excel
   Попытка
      Excel = новый COMОбъект("Excel.Application");
   Исключение
      Сообщить("Похоже, Excel на компьютере не установлен. Необходимо выполнить установку/переустановку Excel.");
      Возврат;
   КонецПопытки;     
   
   //Подключились удачно, открываем файл
   Excel.Workbooks.Open("C:\Documents and Settings\Владелец\Рабочий стол\Для_Животноводства.xls");
   
   //Открываем необходимый лист
   Excel.Sheets(НомерЛиста).select();   
   
   //Получим количество строк и колонок.
   //В разных версиях Excel получаются по-разному, поэтому сначала определим версию Excel
   Версия = Лев(Excel.Version,Найти(Excel.Version,".")-1);
   //Если Версия = "8" тогда
      ФайлСтрок   = Excel.Cells.CurrentRegion.Rows.Count;
      ФайлКолонок = Макс(Excel.Cells.CurrentRegion.Columns.Count, 13);
      
      
  //определим по файлу в каких колонках необходимые данные
   НомерКолонкиНомерЖивотного             = 1;
//   НомерКолонкиПолЖивотного    = 2;
   НомерКолонкиДатаРождения             = 3;
   НомерКолонкиНомерМатери = 4;
   //НомерКолонкиДатаРожденияМатери = 5;
   НомерКолонкиНомерОтца = 5;
//   НомерКолонкиДатаРожденияОтца = 7;
   НомерКолонкиКличка = 8;
   НомерКолонкиПримечание = 9;
   НомерКолонкиВесРожд = 10;
   НомерКолонкиВесОтъем = 11;
   НомерКолонкиВес15 = 14;
   НомерКолонкиВес18 = 15;
   НомерКолонкиВес2г = 16;
   НомерКолонкиВес3г = 17;
   НомерКолонкиВес4г = 18;
   НомерКолонкиВес5г = 19;
   НомерКолонкиВес6г = 20;
   НомерКолонкиВес7г = 21;
   НомерКолонкиВес8г = 22;
   
   
   // Выбираем данные из файла
   Для а = 2 по ФайлСтрок Цикл           
   //   
   //   //Полуим данные из соответсвующих ячеек
      КодЖивотного      = СокрЛП(Excel.Cells(а,НомерКолонкиНомерЖивотного).Value);
      //ПолЖивотного    = СокрЛП(Excel.Cells(а,НомерКолонкиПолЖивотного).Value);
      ДатаРождения      = Excel.Cells(а,НомерКолонкиДатаРождения).Value;
      НомерМатери = СокрЛП(Excel.Cells(а,НомерКолонкиНомерМатери).Value);
   //   ДатаРожденияМатери = Число(Excel.Cells(а,НомерКолонкиДатаРожденияМатери).Value);
      НомерОтца =  СокрЛП(Excel.Cells(а,НомерКолонкиНомерОтца).Value);
   //   ДатаРожденияОтца =  Число(Excel.Cells(а,НомерКолонкиДатаРожденияОтца).Value);
      Кличка =    СокрЛП(Excel.Cells(а,НомерКолонкиКличка).Value);
      Примечание =  Excel.Cells(а,НомерКолонкиПримечание).Value;
      ВесРожд =  Excel.Cells(а,НомерКолонкиВесРожд).Value;
      ВесОтъем =   Excel.Cells(а,НомерКолонкиВесОтъем).Value;
      Вес15 =  Excel.Cells(а,НомерКолонкиВес15).Value;
      Вес18 =  Excel.Cells(а,НомерКолонкиВес18).Value;
      Вес2г =  Excel.Cells(а,НомерКолонкиВес2г).Value;
      Вес3г =  Excel.Cells(а,НомерКолонкиВес3г).Value;
      Вес4г =  Excel.Cells(а,НомерКолонкиВес4г).Value;
      Вес5г =  Excel.Cells(а,НомерКолонкиВес5г).Value;
      Вес6г =  Excel.Cells(а,НомерКолонкиВес6г).Value;
      Вес7г =  Excel.Cells(а,НомерКолонкиВес7г).Value;
      Вес8г =  Excel.Cells(а,НомерКолонкиВес8г).Value;

      
      
      
        //создаем и заполняем элемент справочника
       КартКор = Справочники.КарточкаКоровы.Выбрать().Следующий() Цикл
       объект =КартКор.ПолучитьОбъект();
       Объект.Код = "ДРЖ-"+КодЖИвотного;
         
      
         
         
         
      Попытка
      
         Исключение
         Предупреждение("Не удалось записать объект """ + + """!
                 |" + ОписаниеОшибки(), 60);
                
      КонецПопытки;
        ОбработкаПрерыванияПользователя();


          КонецЦикла;
   
   
     
   
   
   Сообщить("Загрузка завершена!!!");
   
   //Закрываем Excel
    Excel.ActiveWorkbook.Close(); 
 

progmikon

Что вы этой строчкой хотели сказать?
КартКор = Справочники.КарточкаКоровы.Выбрать().Следующий() Цикл

Zeratul

это не доработано еще я все пытаюсь как - то сделать :nhsrm:

progmikon

Скажите, а какова вообще сейчас задача? пробежаться по всем элементам справочника и проставить другой код?

Zeratul

да и не только код, еще прописать происхождение, приметы, веса и много еще чего

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск