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

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

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

ShIvADeSt (03-04-2009 02:03): Продолжение тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=10256#1
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

ShIvADeSt



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


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

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

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

Для заблудившихся в трех соснах >>> FAQ по форуму RU.Board

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:30 06-02-2008 | Исправлено: vkramnik, 21:26 27-03-2009
mmikl

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kuznecovyu
 
Без книжки по конфигурированию Вам будет сложно решить эту задачу.

Всего записей: 309 | Зарегистр. 01-02-2007 | Отправлено: 09:20 29-09-2008
St01en

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kuznecovyu
Вот так у меня
 
// ===============================
Процедура ВыборДоговора()
    Фрм = СоздатьОбъект("СписокЗначений");
    Фрм.ДобавитьЗначение(ТекущийЭлемент(),"Контрагент");
    Фрм.ДобавитьЗначение("ДоговораКонтрагентов","ГрафаОтбора"); // значения "Договора"
    
    ОткрытьФормуМодально("Журнал.ПолныйЖурнал.ДляВыбораДоговоровИСчетов",Фрм,);
    
    Если ПустоеЗначение(Фрм.Получить("Документ")) = 0 Тогда
        БазДоговор=Фрм.Получить("Документ");
    КонецЕсли;
                  
    Если БазДоговор.Выбран() = 1  Тогда
        Если БазДоговор.Контрагент <> ТекущийЭлемент() Тогда
            Предупреждение("Договор не принадлежит данному контрагенту!");
            БазДоговор = глВосстановитьЗначение(,"БазДоговор");
        КонецЕсли;
    КонецЕсли;
    глСохранитьЗначение(,"БазДоговор",БазДоговор);
    
КонецПроцедуры //ВыборДоговора()
 
На форме делаешь поле ввода БазДоговор, тип - Документ.

Всего записей: 292 | Зарегистр. 10-04-2006 | Отправлено: 09:35 29-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Liderdomofon
Цитата:
Подскажите : 1С формирует отчёт по остаткам склада. Поставлена задача из этих остатков резервировать изделия. Отчёт должен иметь вид: остаток таких-то изд шт. столько-то, из них зарезервировано столько-то. Как это вооще релиазовать???
 
An4eus
1C 7.7 наверное 25-й релиз, конфа от ИТРП "Предприятие"

поскольку с этой конфой не работал, то мой тебе совет:
скачай Торговлю и Склад или Комплексную...
посмотри как там сделан отчет по остаткам ТМЦ (особенно функцию за вычитом резервов) + сравни конфы в плане регистров. А то может там регистры ОстатковТМЦ и Резервы аналогичные, тогда можешь просто сделать внешний отчет ОсталкиТМЦ
 
xxxxxxxxxxpp

Цитата:
нужно добавить в сущ. конфигурацию бухгалтерии - GAAP. как я понял она каким-то образом интегрируется туда. как только?

вообще в поставке есть толи readme.txt, толи update.txt... вообще нужно будет объединять с конфой... только обязательно почитай эти файлы...
 
rvsn12345
если конфу уже изменил, то поще сделать отбор в этом журнале по контрагенту!
если типовая, то лучше - как сказал mmikl
 
klimanoff
ну если ты не захотел, как я советовал, то увеличивай текстовое поле в высоту!
 
kuznecovyu

Цитата:
Подскажите пожалуйста!  
1С 7.7 - Как выдернуть данные с обработчика Обработка.ВводАдреса в печатную форму документа Договора. Мне нужно, чтобы выходил на печать адрес Контрагента выбранного в форме Договора. Если можно поподробнее!  Заранее Спасибо!

1. для чего тебе это (выдернуть)?
2. что за конфа?


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

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 09:51 29-09-2008
hackman



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Пробую написать перетаскивание документа Comdir из базы 1 в базу 2 средствами ОЛЕ.  
 

Код:
 
Процедура Підключитися()
     
 Перем Док_ОLE;
 БазаОле=СоздатьОбъект("V77.Application");  
 
 КаталогБазыОЛе  = path;
ПользовательОле = login;
ПарольОле       = pass;
МонопольныйРежимOLE = " /m"; // для немонопольного запуска указать пустую строку!
ЗапускБезЗаставки = 1;       // для появления заставки (например, чтобы наблюдать
                             // процесс запуска базы OLE визуально) поставьте здесь "0"
РезультатПодключения = БазаОле.Initialize ( БазаОле.RMTrade , "/d" +
                       СокрЛП(path) + " /n" + СокрЛП(login)+
                       " /p" + СокрЛП(pass) + МонопольныйРежимOLE,
                       ?(ЗапускБезЗаставки = 1,"NO_SPLASH_SHOW",""));
Если РезультатПодключения = 0 Тогда
     Предупреждение("Не вдалося підключитися до бази даних, перевірте введені дані!");
КонецЕсли;
 
 
//Підключитися() ;    
    ТЗДок=СоздатьОбъект("ТаблицаЗначений");
    Док_OLE = БазаОле.CreateObject("Документ.Сomdir");  
    ДокComdir=СоздатьОбъект("Документ.Сomdir");  
Док_ОLE.ВыбратьДокументы(Дата1,Дата2);
 //ДокОле.Новый();
 
 Пока Док_ОLE.ПолучитьДокумент()=1 Цикл
     Док_ОLE.ВыгрузитьТабличнуюЧасть(ТЗДок);
 
       ДокComdir.Новый();
       ДокComdir.ДатаДок=Док_ОLE.ДатаДок;
       ДокComdir.ЦентрВідповідальності=Док_ОLE.ЦентрВідповідальності;
 ДокComdir.ЗагрузитьТабличнуюЧасть(ТЗДок);
     КонецЦикла;
 
КонецПроцедуры
 

 
Подскажите почему дает ошыбку:
в строке Док_OLE = БазаОле.CreateObject("Документ.Сomdir");  видает ошыбку:
Неудачная попытка создания объекта (Документ.Сomdir") Подскажите что сделать.
 
 

Всего записей: 185 | Зарегистр. 22-09-2003 | Отправлено: 17:26 29-09-2008 | Исправлено: hackman, 18:15 29-09-2008
LaCastet



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

Цитата:
Неудачная попытка создания объекта (Документ.Сomdir")

Вроде должно работать. Внимательно просмотри правильность написания Документ.Сomdir (может "С" написана на кирилице, она на литинице такая же).

Всего записей: 4566 | Зарегистр. 27-07-2005 | Отправлено: 19:00 29-09-2008
St01en

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
hackman
Попробуй сначала создать  
 ДокComdir=СоздатьОбъект("Документ.Сomdir");  
а потом подключать базу
Док_OLE = БазаОле.CreateObject("Документ.Сomdir");  
 
или даже наверное так
Док_OLE = БазаОле.CreateObject("ДокComdir");  
 
Хотя могу и ошибаться, я не сильный 1с-ник =))

Всего записей: 292 | Зарегистр. 10-04-2006 | Отправлено: 09:14 30-09-2008
korvin76



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
при выборе некоторого реквизита в табл. поле из перечислений дается список значений (Например: Значение1, Значение2, Значение3), в первой строке например выбрали "Значение2", необходимо что бы при выборе во второй строке список сократился, и доступно было только Значение1 и Значение3. Спецы, подскажите плиз как это реализовать в коде.

Всего записей: 114 | Зарегистр. 19-12-2005 | Отправлено: 09:50 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
korvin76
как ТЗ организовано?
СЗ - один список или для каждой строки свой?

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

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 13:34 30-09-2008
xxxxxxxxxxpp



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

Цитата:
xxxxxxxxxxpp
 
Цитата:
нужно добавить в сущ. конфигурацию бухгалтерии - GAAP. как я понял она каким-то образом интегрируется туда. как только?
 
вообще в поставке есть толи readme.txt, толи update.txt... вообще нужно будет объединять с конфой... только обязательно почитай эти файлы...  

 
 
а вот в том то и ТРАБЛ, что нет нихрена.

Всего записей: 118 | Зарегистр. 15-04-2005 | Отправлено: 14:47 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
xxxxxxxxxxpp
а в конфигурации? в описании, в комментариях глобальника?

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

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 15:29 30-09-2008
iva77



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет!
 
Помогите, пожалуйста. Нужен пример обработки со схемой компановки данных. Где схема только создана и не заполнена вручную. Все заполнение только программно. Набор данных объект - ТаблицаЗначений. Сам пробовал, не работает. Вот для примера мой код:
    Запрос = Новый Запрос;
    Запрос.Текст =  
    "ВЫБРАТЬ
    |    ИсполнениеБюджетаОбороты.Проект КАК Проект,
    |    ИсполнениеБюджетаОбороты.СтатьяЗатрат КАК СтатьяЗатрат,
    |    ИсполнениеБюджетаОбороты.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |    ЕСТЬNULL(ИсполнениеБюджетаОбороты.СуммаОборот, 0) КАК СуммаОборот
    |ИЗ
    |    РегистрНакопления.ИсполнениеБюджета.Обороты КАК ИсполнениеБюджетаОбороты";
 
    Результат = Запрос.Выполнить();
    тз = Результат.Выгрузить();
     
    // Схема компоновки данных
 
    СхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет("ОсновнаяСКД");
    // Источник данных
 
    ИсточникДанных = СхемаКомпоновкиДанных.ИсточникиДанных.Добавить();
    ИсточникДанных.Имя = "ИсточникДанных1";
    ИсточникДанных.ТипИсточникаДанных = "Local";
    // Добавим набор данных объект    
 
    НаборДанных = СхемаКомпоновкиДанных.НаборыДанных.Добавить(Тип("НаборДанныхОбъектСхемыКомпоновкиДанных"));
    НаборДанных.Имя = "НаборДанных1";
    НаборДанных.ИсточникДанных = ИсточникДанных.Имя;
     
    НаборДанных = СхемаКомпоновкиДанных.НаборыДанных.Найти("НаборДанных1");
    СтаршийИндексКолонки = тз.Колонки.Количество() - 1;
    Для  Инд = 0 По СтаршийИндексКолонки Цикл
        Кол = тз.Колонки.Получить(Инд);
        Если Найти(Кол.Имя, "Представление") > 0 Тогда
            Продолжить;
        КонецЕсли;
        //Измерения  
 
        ПолеНабораДанных = НаборДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных") );
        ПолеНабораДанных.Поле = Кол.Имя;
        ПолеНабораДанных.ПутьКДанным = Кол.Имя;
        ПолеНабораДанных.Заголовок = Кол.Имя;
        //Ресурсы
 
        Если         Кол.ТипЗначения = Новый ОписаниеТипов("Число,NULL")  Тогда
            Выражение = "Сумма(" + ПолеНабораДанных.ПутьКДанным + ")";
            ПолеИтога = СхемаКомпоновкиДанных.ПоляИтога.Добавить();
            ПолеИтога.ПутьКДанным = ПолеНабораДанных.ПутьКДанным;
            ПолеИтога.Выражение = Выражение;
        КонецЕсли;  
    КонецЦикла;  
     
    КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
    КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
     
     //Настройки
 
    Настройки = ЭтотОбъект.КомпоновщикНастроек.Настройки;
    ГруппировкаПроект = Настройки.Структура.Добавить(Тип ("ГруппировкаКомпоновкиДанных" ));
    ГруппировкаПроект.Использование = Истина;
     
    ПолеПроект = ГруппировкаПроект.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
    ПолеПроект.Использование = Истина;
     
    ПолеПроект.Поле = Новый ПолеКомпоновкиДанных("Проект");
    ВыбранныеПоляДляПроекта = ГруппировкаПроект.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
    ВыбранныеПоляДляПроекта.Использование = Истина;
     
    ГруппировкаСтатьяЗатрат =  ГруппировкаПроект.Структура.Добавить(Тип ("ГруппировкаКомпоновкиДанных" ));
    ГруппировкаСтатьяЗатрат.Использование = Истина;
     
    ПолеСтатьяЗатрат = ГруппировкаСтатьяЗатрат.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
    ПолеСтатьяЗатрат.Использование = Истина;
     
    ПолеСтатьяЗатрат.Поле = Новый ПолеКомпоновкиДанных("СтатьяЗатрат");
    ВыбранныеПоляДляСтатьяЗатрат = ГруппировкаСтатьяЗатрат.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
    ВыбранныеПоляДляСтатьяЗатрат.Использование = Истина;
    // Сформируем структуру, содержащую внешний набор данных:
 
    ВнешниеНаборыДанных = Новый Структура;
    ВнешниеНаборыДанных.Вставить("тз", тз);
     
    ОтчетОбъект.КомпоновщикНастроек.Восстановить();
    Схема = ОтчетОбъект.СхемаКомпоновкиДанных;
    //Сгенерируем макет компоновки данных при помощи компоновщика макета
 
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(Схема, ОтчетОбъект.КомпоновщикНастроек.Настройки);
     
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных);
 
 
После выполнения последнего оператора выдает ошибку:
{Форма.ФормаОтчетаСКД(96)}: Ошибка при вызове метода контекста (Инициализировать): Ошибка компоновки данных
   ПроцессорКомпоновки.Инициализировать(МакетКомпоновки);
по причине:
Ошибка компоновки данных
по причине:
Ошибка инициализации
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Не найден внешний набор данных

Всего записей: 36 | Зарегистр. 22-12-2006 | Отправлено: 15:48 30-09-2008
voffka81

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
подскажите пожалуйста: я пишу вот такой отбор документов:
ОткрытьПодбор("Документ.ПоступлениеТМЦ",,,1);
как в этом отборе сделать тач чтобы были выбраны документы за определенную дату?

Всего записей: 91 | Зарегистр. 15-06-2006 | Отправлено: 16:01 30-09-2008
St01en

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
voffka81
 
Примерно так
 
Док = СоздатьОбъект("Документ.ПоступлениеТМЦ"); // это у тебя есть?
 
++++++++++++++++
 
Док.ВыбратьДокументы();
Пока Док.ПолучитьДокумент = 1 Цикл
Если Док.ДатаДок <> НужнаяДата
Продолжить;
КонецЕсли;

Всего записей: 292 | Зарегистр. 10-04-2006 | Отправлено: 16:33 30-09-2008
An4eus



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
voffka81
передавай параметр: две даты...
 
в журнале получи их и используй УстановитьИнтервал(...)

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

Всего записей: 3768 | Зарегистр. 23-07-2007 | Отправлено: 16:40 30-09-2008
voffka81

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
St01en
это надо вставить вместо отбора? дело в том что отбором я помещаю документы в ТЗ и потом их обрабатываю...

Всего записей: 91 | Зарегистр. 15-06-2006 | Отправлено: 16:51 30-09-2008
rvsn12345

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

Цитата:
если конфу уже изменил, то поще сделать отбор в этом журнале по контрагенту!
если типовая, то лучше - как сказал mmikl  

типовая. вопрос не в том , менять или не менять конфу
 
заполнение счета по другим счетам.
 
Док = СоздатьОбъект("Документ.Счет");
Если Док.Выбрать("Выбор") = 1 Тогда
 
"Выбрать" не дает отбора по значению, зато открывает окно графически для выбора документов.
 
если использовать как в "Обработка документов"
Док = СоздатьОбъект("Документ");
Если Док.ВыбратьПоЗначению   (,,"Контрагент",Контрагент)=1 тогда
 
не дает графического выбора нужных документов.
там чисто в печате реестра можно увидеть отбор.  
а мне надо чтобы выбор документов делался в отдельно открывающемся окне...
 
В "общем журнале" есть значек "отбор по значению" но он зашит в движок походу
 

Всего записей: 54 | Зарегистр. 27-08-2007 | Отправлено: 17:47 30-09-2008
1nasty1



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
УТ 10.3.5.1 . стандартная атоловская обработка. выдает такую ошибку  
 
{ВнешняяОбработка.АТОЛСканерШтрихкода(198)}: Поле объекта не обнаружено (Чувствительность)
Объект.Параметры.Свойство("Чувствительность", Объект.Драйвер.Чувствительность);
 
вот сама обработка: http://rapidshare.com/files/149678408/ATOLBarcodeScan_v2.epf.html что там подправить? чтобы заработала?

Всего записей: 751 | Зарегистр. 11-03-2005 | Отправлено: 17:47 30-09-2008
newjon



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вопрос 1с 7.7  
документ заполняется из справочника, после проведения документа редактирование справочника будет запрещено ( для этого в справочнике заведена переменная флаг и при проведении он устанавливается в 1). Вопрос собственно следующий если на момент проведения документа (который и устанавливает флаг в единицу) элемент того справочника уже будет открыт на редактирование другим пользователенм по сети он перезапишится? и с какими данными?

Всего записей: 395 | Зарегистр. 03-06-2005 | Отправлено: 19:14 30-09-2008 | Исправлено: newjon, 19:18 30-09-2008
Akam1



Комса
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
1nasty1
А драйвера стоят атоловские? У меня не выдает такую ошибку.

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

Всего записей: 26360 | Зарегистр. 20-04-2006 | Отправлено: 05:09 01-10-2008
KasperRWF



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте! Помогите, пожалуйста решить задачу! Есть два регистра остатков. Один "ОстаткиНоменклатуры", другой "ТоварыВРезервеНаСкладах". В каждом из них есть по два измерения, первое "Номенклатура", второе "Склад". Так-же в каждом есть ресурс "Количество".
 
Нужно! Создать отчет, который в сводной таблице в разрезе товаров будет показывать на заданную дату количество в резерве и количество в разрезе складов.
 
Товар    Склад1    Склад2    ...    Зарезервировано
Товар1       5             3                         50
...                
ИТОГО                
 
Честно говоря, уже сломал моск как это сделать одним запросом! Возможно это делается с помощью компановки или ещё как-то?
 
ЗЫ: Вопрос со специалиста по платформе 8_1.

Всего записей: 64 | Зарегистр. 23-06-2008 | Отправлено: 09:40 01-10-2008 | Исправлено: KasperRWF, 09:42 01-10-2008
   

Страницы: 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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru