Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » 1C Программирование и поддержка

Модерирует : ShIvADeSt

ShIvADeSt (30-10-2009 09:51): http://forum.ru-board.com/topic.cgi?forum=33&topic=10715  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Тема для программирования 1С!!!
Это продолжение темы, предыдущие части доступны тут


ПРОГРАММЫ  1С:Предприятие 1C - 1C: Вопросы по конфигурациям

ВАРЕЗНИК   1C:Предприятие 7.7 - 1С:Предприятие v.8.x - 1C Диск ИТС - 1С: Совместимо 8.х

Топик 1C Ebooks
ЗДЕСЬ  (обновлено 17.10.2009) - небольшая библиотечка (книги, документация, видео, утилиты) по 1С, финансам, бухучету и т.п.
Все рассортировано по версиям...


Для заблудившихся в трех соснах >>> FAQ по форуму RU.Board
 
Предыдущие темы были здесь часть 4 | часть 3 | часть 1
 
Как убить рекламу при обновлении отчетности | конфигурации (ИБ)?

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:02 03-04-2009 | Исправлено: vkramnik, 12:06 23-10-2009
Akam1



Комса
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
egerLESHIK
Мож я че-то напутал, но создается колонка для чисел длиной 10, а вставляется число из 15 цифр?
Цитата:
ТЗЗаявка.НоваяКолонка("Цена","Число",10,2,,5);
...
Возврат Формат(глВернутьЦену(КатЦен,НаДату),"Ч015."+Точность);  


----------
В правильно поставленном вопросе всегда содержится 50% ответа
Все будет так, как должно быть. Даже если будет иначе.

Всего записей: 26360 | Зарегистр. 20-04-2006 | Отправлено: 11:17 01-06-2009
dias65



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
egerLESHIK
во-первых, в процедуре "Выполнить()" вот это
Код:
ТЗЗаявка.Очистить();
    ТЗЗаявка.НоваяКолонка("М","Число",2);
    ТЗЗаявка.НоваяКолонка("N","Число",4);
    ТЗЗаявка.НоваяКолонка("Группа",,30,,,,,);
    ТЗЗаявка.НоваяКолонка("Наименование","Строка",30,"Наименование");
//    ТЗЗаявка.ТМЦ=("ТМЦ.Родитель");
    ТЗЗаявка.НоваяКолонка("Цена","Число",10,2,,5);
 вполне можно заменить на
Код:
ТЗЗаявка.УдалитьСтроки()
во-вторых, Колонка "Цена" объявляется, как числовая, а результат функции "ПолучитьЦена()", который мы пытаемся засунуть в эту колонку, - строка:
Код:
Возврат Формат(глВернутьЦену(КатЦен,НаДату),"Ч015."+Точность);  
кроме того, из кода не видно, что делает глобальная функция "глВернутьЦену", а конфига и платформа не указаны. Я предположил, что это 7.7, а конфига -?

Всего записей: 277 | Зарегистр. 28-11-2006 | Отправлено: 12:45 01-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
egerLESHIK
каковов описание функций :
1. глВернутьКатегориюЦен()
2. глВернутьЦену()
3. в цикле ты не сможешь использовать ОткрытьФорму("Справочник.Цены.ФормаСписка",ТекЭл);  !!! + для чего это?

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 13:53 01-06-2009
egerLESHIK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DARKDEAD

Цитата:
Справочник. тип цен подчинен, спр. номенклатуре?

Этот справочник не подчинен. А подчинен справочник "Цены", в котором и выбираются эти типы цен.
 
dias65

Цитата:
Я предположил, что это 7.7, а конфига -?

7.7 и конфига "Торговля и склад" (переписанная)
 

Цитата:
Возврат Формат(глВернутьЦену(КатЦен,НаДату),"Ч015."+Точность);  


Цитата:
ОткрытьФорму("Справочник.Цены.ФормаСписка",ТекЭл);

Похоже с этими строками кода я явно перестарался.
 
An4eus

Цитата:
1. глВернутьКатегориюЦен()
2. глВернутьЦену()  

 
1.
Код:
Функция глВернутьКатегориюЦен(стрКод,Создавать=0) Экспорт
    СпрКатЦ = СоздатьОбъект("Справочник.КатегорииЦен");
    Если СпрКатЦ.НайтиПоКоду (стрКод) = 1 Тогда
        Возврат СпрКатЦ.ТекущийЭлемент();
    Иначе  
        Если Создавать=Да Тогда
            СпрКатЦ.Новый();
            СпрКатЦ.Код =стрКод ;
            СпрКатЦ.Наименование =стрКод;
            СпрКатЦ.Комментарий = "Создан автоматически";
            СпрКатЦ.ТорговаяНаценка =0;
            СпрКатЦ.Служебная =0;
            СпрКатЦ.Записать();
            Возврат СпрКатЦ.ТекущийЭлемент();
        Иначе
            Возврат 0;
        КонецЕсли;
    КонецЕсли;                            
КонецФункции    // глВернутьКатегориюЦен
 

 
2.
Код:
Функция глВернутьЦену(Товар, КатегорияЦены, ДатаЦены=0,Конт = 0, ТочностьЦены = 5,Коэффициент=1) Экспорт  Далее

 

Код:
Функция глВернутьЦену(Товар, КатегорияЦены, ДатаЦены=0,Конт = 0, ТочностьЦены = 5,Коэффициент=1) Экспорт  
 
 
    //Вызывала ошибку при вызове из справочника
    Если (Товар.ЭтоГруппа() = 1) или (ПустоеЗначение(Товар) = 1) Тогда
        Возврат 0;
    КонецЕсли;
    Если ПустоеЗначение(КатегорияЦены)=1 Тогда
        Сообщить("Не определена категория цен: "+КатегорияЦены+" в товаре "+Товар+" "+Товар.Артикул,"!!!");
        Возврат 0;
    КонецЕсли;            
    Если ПустоеЗначение(Конт) = 0 Тогда
        Если Конт.Вид() = "РасходнаяНакладная" Тогда
            Если (Конт.Подразделение.ТипПодразделения = Перечисление.ТипыПодразделений.Логистическое) И (Конт.ДатаДок > Дата("03.05.06")) Тогда
                Возврат Конт.ЦенаСНДС;
            КонецЕсли;            
        КонецЕсли;
    КонецЕсли;  
    
    Цена = 0;
    
    ЦеныТовара = СоздатьОбъект("Справочник.Цены");
    ЦеныТовара.ИспользоватьВладельца(Товар);
    
    Если Константа.ПрограммируемаяМиграция = 1 Тогда  
        Если ЦеныТовара.НайтиПоРеквизиту("КатегорияЦены",КатегорияЦены,0) = 1 Тогда
            Цена = ЦеныТовара.ТекущийЭлемент()
        КонецЕсли;
    Иначе
        ЦеныТовара.ВыбратьЭлементы();
        Пока ЦеныТовара.ПолучитьЭлемент()  = 1 Цикл
            Если ЦеныТовара.ПометкаУдаления() = 1 Тогда
                Продолжить;
            КонецЕсли;
    
            Если ЦеныТовара.КатегорияЦены = КатегорияЦены Тогда
                Цена = ЦеныТовара.ТекущийЭлемент();
                Прервать;
            КонецЕсли;
        КонецЦикла;
    КонецЕсли;

 
 
Добавлено:
И такой вопрос вдогонку, создал поля для ввода с идентификаторами: ТелКлиент, АдрКлиент
Только при выборе контрагента почему-то данные телефона и адреса не подставляются.
 

Код:
//***************************Обработка шапки диалога обработки**************************
Процедура ПриОткрытии()    
       ЭлементСправочника = СоздатьОбъект ("Справочник.ТорговыеТочки");  
       СпК = СоздатьОбъект ("Справочник.Контрагенты");
  //Наименование=Контрагенты;
     Если Контрагенты=1 Тогда
          ТелКлиент=СпК.Телефоны;
         АдрКлиент=ЭлементСправочника.Адрес;
     КонецЕсли;    
 

Всего записей: 950 | Зарегистр. 24-03-2004 | Отправлено: 14:49 01-06-2009 | Исправлено: egerLESHIK, 14:50 01-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Возврат Формат(глВернутьЦену(КатЦен,НаДату),"Ч(0)15."+Точность);

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 15:50 01-06-2009
egerLESHIK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
не выводит цены все равно, хоть 15, хоть 10

Всего записей: 950 | Зарегистр. 24-03-2004 | Отправлено: 16:21 01-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
egerLESHIK
предлагю ещё раз расписать задачу + чего дано  - другими словами...

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 17:38 01-06-2009 | Исправлено: An4eus, 18:09 01-06-2009
egerLESHIK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Делаю так:
Шапка ТЗ:
1. Название обработки.
2. Поле выбора Контрагента (клиента) - выбирает из справочника "Торговые точки".
3. Текстовое поле "Телефон", должно быть, чтобы можно было прописать вручную, но коль, если выбран Контрагент из пункта 2, что чтобы подставило автоматом в это поле телефон.
4. "Адрес" аналогично пункту 3: либо запись вручную, либо автоподстановка при выборе пункта 2.
5.Выбор типа цен из справочника "Типы цен".
 
Табличная часть ТЗ:
Заполняем колонки:
1. Номер по порядку "N" - на данный момент код рабочий.
2. Заполняем товарную группу: "Группа" - на данный момент код рабочий.
3. Заполняем колонку цена. Заполняться должно в соответствии с выбранным типом цен, на дату выполнения обработки. - код не отрабатывает.
 
ПРимечание:
Примеры типов цен:  
"Опт"
"Доставка город"
"Доставка область"
"Розница"

Всего записей: 950 | Зарегистр. 24-03-2004 | Отправлено: 17:55 01-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
egerLESHIK
1. ошибка : глВернутьЦену(КатЦен,НаДату)
1-ый параметр номенклатура, а потом уже категория цен и дата
2. ТЗЗаявка.Наименование=СпТМЦ.Наименование;
надо не наименование передавать, а объект

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 19:38 01-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
egerLESHIK
а вообще: мне не понраивлась реализация адресов...
ведь может быть такие случаи, когда на одном адресе - две-три ... конторы
P.s. а это самописная (например справочник адресов, который подчиненный) или нет конфа?

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 04:15 02-06-2009
egerLESHIK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
An4eus

Цитата:
а это самописная (например справочник адресов, который подчиненный) или нет конфа?

Здесь взято за основу конфа "Торговля и склад" и переписана. Как мне сказали от стандартной конфы там почти ничего не осталось.
 
Добавлено:

Цитата:
а вообще: мне не понраивлась реализация адресов...
ведь может быть такие случаи, когда на одном адресе - две-три ... конторы  

А в чем тут сложность: две три конторы - заносим на один адрес. =)

Всего записей: 950 | Зарегистр. 24-03-2004 | Отправлено: 09:47 02-06-2009
egerLESHIK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос еще такой по той же конфе (7.7 Торговля и склад). Хочу задать колонки с расшифровкой.
Имеется: Группа ТМЦ, подгруппа ТМЦ и сами ТМЦ. Нужно в новой колонке вывести расшифровку.
Создал колонку "Расшифровка" и вывожу таким кодом:

Код:
         Если СпТМЦ.ЭтоГруппа()=1 Тогда
             ТЗЗаявка.Расшифровка="Группа";
         Иначе
             ТЗЗаявка.Расшифровка="ТМЦ";    
         КонецЕсли;
    
То есть вывожу расшифровку "Группа" и "ТМЦ", а как задать в коде вывод подгруппы "Подгруппа"? То есть эта подгруппа находится в группе, в то же время в подгруппе сосредоточены ТМЦ. Спасибо.

Всего записей: 950 | Зарегистр. 24-03-2004 | Отправлено: 12:10 02-06-2009 | Исправлено: egerLESHIK, 12:11 02-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
egerLESHIK
Цитата:
А в чем тут сложность: две три конторы - заносим на один адрес. =)
будет дублировать информация...
вот представь, что у всех контрагентов адреса одинаковые? тогда тебе придётся вводить их столько раз, сколько контрагентов!!! или  же: у каждого контрагента по пять адресов (5 подчиненных элементов), причём 3 адреса везде одинаковые! (тогда ввод инфы будет лишним, как минимум на числоКонтрагентов*3 - 1)

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 12:27 02-06-2009 | Исправлено: An4eus, 16:56 02-06-2009
egerLESHIK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хочу подсчитать строки у справочника перед началом цикла занесения данных из этого  справочника в ТЗ. (7.7, "Торговля и склад"). Часть кода ниже:
 

Код:
СпТМЦ=СоздатьОбъект("Справочник.ТМЦ");
    СпТМЦ.ВыбратьЭлементы();  
 
    ДлинаПрогресса=СпТМЦ.КоличествоСтрок();  
    НС=1;  
    Пока СпТМЦ.ПолучитьЭлемент()>0 Цикл  
        .............
 

 
Выдает ошибку о том, что не обнаружено поле агрегатного объекта КоличествоСтрок().
Я понимаю, что если делать непосредственно из открытого справочника, то код будет отрабатывать. Но мне это не нужно. Нужно чтобы форму справочника открывало "заочно" и пересчитывало количество строк по ТМЦ. Вроде рассуждаю правильно, но что-то не получается реализовать. Если рассуждаю неправильно, направьте в правильное русло, пожалуйста.  
Спасибо.

Всего записей: 950 | Зарегистр. 24-03-2004 | Отправлено: 11:41 04-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
egerLESHIK
так и не подсчитаешь!
не перебирая их - только запросом!

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 12:01 04-06-2009
wise2000

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток!
 
Задача такова, необходимо в налоговом отчете за 1 кв. 2009 - "Авансы по налогу на имущество. Раздел 2" (7.7,  Бух. учет) сделать возможность расчета остаточной стоимости основных средств по группам, а не выбирать основные средства полностью.
 

Код:
ИтСубк = СоздатьОбъект("БухгалтерскиеИтоги");
...
ИтСубк.ИспользоватьСубконто(ВидыСубконто.ОсновныеСредства,, 1);  
ИтСубк.ВключатьСубсчета(1, 0);

 
Подскажи пожалуйста как это сделать т.к. я новичок в этом деле.
Заранее благодарен.

Всего записей: 4 | Зарегистр. 04-06-2009 | Отправлено: 14:57 04-06-2009 | Исправлено: wise2000, 15:00 04-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
wise2000
что-то я не понял: собираешь менять унифицированную форму сдачи в налоговую?

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 15:04 04-06-2009
DARKDEAD

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
wise2000
An4eus прав, не стОит этого делать, если конечно не сдавать в НИ, а если не сдавать, то правильнее свой отчет написать.

Всего записей: 249 | Зарегистр. 04-02-2008 | Отправлено: 15:21 04-06-2009
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
DARKDEAD
думается мне, что человек неправильно выразился...

----------
Век живи - век учись!

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 15:23 04-06-2009
wise2000

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Этот отчет сдавать в НИ не собираемся, цифры как это часто бывает понадобились бухгалтерам.  
Что же касается написания собственного отчета, то пока я не владею необходимыми знаниями для этого и прошу Вашей помощи.
An4eus  По поводу того что я не правильно выразился - это возможно, но вопрос останется без изменений т.к. по моему мнению он изложен ясно.

Всего записей: 4 | Зарегистр. 04-06-2009 | Отправлено: 16:29 04-06-2009 | Исправлено: wise2000, 16:30 04-06-2009
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » 1C Программирование и поддержка
ShIvADeSt (30-10-2009 09:51): http://forum.ru-board.com/topic.cgi?forum=33&topic=10715


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru