Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
18 Янв 2017, 04:35
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Программное изменение реквизита СуммаВключаетНДС  (Прочитано 632 раз)

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

Оффлайн DEaD_EGOR

  • *
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-03-15
  • Сайт: 
  • Профессия: Программист 1С
Доброго времени суток... Господа Знатоки, помогите новичку.. Создал внешнюю обработку, которая читает эксель и полученными значениями заполняет новый докумен Реализация товаров в БП 3,0 (работаю в демо).. Всё сделал, хочу, чтоб по умолчанию стояло значение "НДС сверху".. как и где это можно прикрутить?

Код собсна ниже...

&НаКлиенте 
Процедура ИмяФайлаНачалоВыбора(Элемент, СтандартнаяОбработка)

ДиалогВыбора = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
ДиалогВыбора.Заголовок = "Выберите файл";

Если ДиалогВыбора.Выбрать() Тогда
Объект.ИмяФайла = ДиалогВыбора.ПолноеИмяФайла;
Иначе
Возврат;
КонецЕсли;

КонецПроцедуры

&НаКлиенте
Процедура ЗагрузитьФайлНаКлиенте(мФорма)
                 
    //подключаемся к эксель
    Попытка
        Excel = Новый COMОбъект("Excel.Application");
        Книга = Excel.WorkBooks.Open(Объект.ИмяФайла);
    Исключение
        Сообщить("Ошибка при открытии файла с помощью Excel! Загрузка не будет произведена!");
        Сообщить(ОписаниеОшибки());
        Возврат;
    КонецПопытки;
       
    Попытка
        //Открываем необходимый лист
        Excel.Sheets(1).Select();  // лист 1, по умолчанию 
    Исключение
        //Закрываем Excel
        Excel.ActiveWorkbook.Close();   
        Excel = 0;
        Сообщить("Файл "+Строка(Объект.ИмяФайла)+" не соответствует необходимому формату! Первый лист не найден!");
        Возврат;
    КонецПопытки;   
                 
    //Получим количество строк и колонок.
    //В разных версиях Excel получаются по-разному, поэтому сначала определим версию Excel
    Версия = Лев(Excel.Version,Найти(Excel.Version,".")-1);
    Если Версия = "8" тогда
        ФайлСтрок   = Excel.Cells.CurrentRegion.Rows.Count;
        ФайлКолонок = Макс(Excel.Cells.CurrentRegion.Columns.Count, 13);
    Иначе
        ФайлСтрок   = Excel.Cells(1,1).SpecialCells(11).Row;
        ФайлКолонок = Excel.Cells(1,1).SpecialCells(11).Column;   
    Конецесли;
     
    //считываем первую строку и генерируем колонки 
    Для НС = 2 по ФайлСтрок Цикл  // НС указываем с какой строки начинать обработку       
        НоваяСтрока = мФорма.Объект.Товары.Добавить();
НоваяСтрока.Номенклатура = ПолучитьНоменклатуруНаСервере(Excel.Cells(НС, 2).Text);
мЧисло = СтрЗаменить(Excel.Cells(НС, 3).Text," ", "");
        НоваяСтрока.Количество = Число(мЧисло);
        НоваяСтрока.Цена = Excel.Cells(НС, 4).Text;
        Если Найти(Строка(Excel.Cells(НС, 6).Text),"10")>0 Тогда
            НоваяСтрока.СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10");
        ИначеЕсли Найти(Строка(Excel.Cells(НС, 6).Text),"20")>0 Тогда
            НоваяСтрока.СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20");
        ИначеЕсли Найти(Строка(Excel.Cells(НС, 6).Text),"18")>0 Тогда
            НоваяСтрока.СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18");
КонецЕсли;
КонецЦикла;   
               
     // Закрыть COM соединение для экономии памяти
     Excel.Application.Quit();
                           
 КонецПроцедуры
   
&НаКлиенте
Процедура ЗагрузитьФайл(Команда)
   
     //Создаём форму документа
     мФорма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаДокументаТовары");                                                                     
ЗагрузитьФайлНаКлиенте(мФорма);
     мФорма.Открыть();
 
 КонецПроцедуры
 
  &НаСервере
Функция ПолучитьНоменклатуруНаСервере(Наименование)
  мНоменклатура = Справочники.Номенклатура.НайтиПоНаименованию(Наименование);
        Если мНоменклатура <> Справочники.Номенклатура.ПустаяСсылка() Тогда
         Возврат мНоменклатура;
      Иначе
       мНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();
       мНоменклатура.Наименование = Наименование;
       мНоменклатура.Записать();
       Возврат мНоменклатура.Ссылка;
      КонецЕсли;
 
  КонецФункции
 

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1095
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
&НаКлиенте
Процедура ЗагрузитьФайл(Команда)
   
     //Создаём форму документа
     мФорма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаДокументаТовары");                                                                     
     ЗагрузитьФайлНаКлиенте(мФорма);
    мФорма.Объект.СуммаВключаетНДС = ИСТИНА;
     мФорма.Открыть();
                   
 КонецПроцедуры

возможно и по другому значение. но смысл я думаю понятен...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн DEaD_EGOR

  • *
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-03-15
  • Сайт: 
  • Профессия: Программист 1С
1) а разве значение не должно быть Ложь?
2) пробовал, всё равно по умолчанию стоит Документ Без НДС

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Потому что:
1. вы далеко не все реквизиты объекта заполнили.
2. пройдитесь отладчиком. Скорее всего вы сначала что-то устанавливаете, а затем типовой код, например в ПриОткрытии выполняет собственную установку.

Оффлайн DEaD_EGOR

  • *
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-03-15
  • Сайт: 
  • Профессия: Программист 1С
Потому что:
1. вы далеко не все реквизиты объекта заполнили.
2. пройдитесь отладчиком. Скорее всего вы сначала что-то устанавливаете, а затем типовой код, например в ПриОткрытии выполняет собственную установку.
А мне и не нужно всё заполнять. Это вообще тестовое задание. По условию, считывается и заполняется только номенклатура, количество и цена. всё остальное подтягивается из базы и справочников... Мне тут посоветовали актуализировать данные, то есть обновлять форму после заполнения по типу "Процедура УстановитьВидимостьСчетовУчета()". Как это сделать?


Теги:
 

как получить значение реквизита "Код" в обработке "ПодборНоменклатуры" в УТ10.3

Автор JalibРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 261
Последний ответ 02 Дек 2016, 12:58
от Jalib
КД, Перенос Реквизита справочника (7.7) в ТЧ справочника 8.2.

Автор EvgenyРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 2857
Последний ответ 17 Сен 2014, 13:39
от Kironten
Как запретить пользователям с интерфейсом "Ввод табеля" изменение графы профессия у подобранного сотрудника в сдельном наряде и табеле учета рабочего времени

Автор ksander-farsРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 316
Последний ответ 15 Сен 2016, 02:46
от ksander-fars
Изменение вида "выпадающего списка"

Автор JohnDoe144Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 583
Последний ответ 20 Май 2016, 13:26
от LexaK
Запрет на изменение "справочники - предприятие"

Автор maskРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 392
Последний ответ 25 Июл 2016, 09:09
от SGIRG

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
155 Сообщений
alex0402
74 Сообщений
alexandr_ll
38 Сообщений
crow1983
31 Сообщений
LexaK
29 Сообщений
MuI_I_Ika MuI_I_Ika
26 Сообщений
sertak sertak
23 Сообщений
BuhRust
18 Сообщений
дфтын дфтын
17 Сообщений
Vzonder
16 Сообщений

* Кто онлайн

  • Точка Гостей: 198
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal