imho.ws |
![]() |
![]() |
![]() |
# 1 |
Member
Регистрация: 02.12.2003
Адрес: Там где истина
Сообщения: 381
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1С:Бухгалтерия. Вопросы и ответы
1С:Предприятие - Вопросы и ответы (1С:Бухгалтерия)
Если есть какие либо вопросы по работе с комплексом программ 1С:Предприятия, всегда готовы помочь найти ответы! Если вы просите совет, то обязательно указывайте номер релиза предприятия, а также конфигурацию и её номер релиза. Ссылки на свежие релизы и прочие запросы постить здесь!
__________________
Молчание не всегда доказывает присутствие ума, но доказывает отсутствие глупости. (с) Буаст |
![]() |
![]() |
# 2961 |
Migel Mod Volos
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
VanHelsing, а до записи не вариант еще строку добавить?
Насколько я понял после запили объект становится ссылкой.
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague Небьющаяся игрушка - это игрушка, которой ребенок может разбить все свои остальные игрушки. |
![]() |
![]() |
# 2962 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
Cartman, нет, не вариант. надо что бы можно было зайти в этот документ (например после разрыва связи) и добавить запись с товаром
![]() 1. а что когда объект становится ссылкой в него ничего добавить/удалить нельзя? 2. может есть другой вариант как сохранять документ (ведь в самой 1с я могу зайти потом в документ найдя его в журнале и добавлять/удалять записи)? зы: речь идет об 1с 8.1
__________________
![]() |
![]() |
![]() |
# 2963 |
Migel Mod Volos
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Подожди, тебе надо чтобы эта процедура закончила свою работу, документ можно было открыть, посмотреть/отредактировать, а потом снова запускать эту процедуру?
Если так - тебе надо найти свой документ. Я бы сделал в форме поле с выбором документа, типа если пустое - создаешь новый, если заполнено - пишешь в него. Объект получаешь типа так: заказПокупателя = НаименованиеПоля.ПолучитьОбъект();
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague Небьющаяся игрушка - это игрушка, которой ребенок может разбить все свои остальные игрушки. |
![]() |
![]() |
# 2964 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
не очень понял. я сам веб-дизайном занимаюсь, потому у меня проблема с 1с (только изучать начал). мне надо найти документ, например по номеру. как номер получить я потом голову забивать буду. потом открыть его, добавить строку и снова сохранить. пошел пока читать что делает ПолучитьОбъект()...
![]()
__________________
![]() |
![]() |
![]() |
# 2965 |
Migel Mod Volos
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Ну вот так например
Док = Неопределено; Док = Документы.ТутТвойТипДокумента.Выбрать(ДатаНач,ДатаКон); Пока Док.Следующий() Цикл Если Док.Номер = "0000001" Тогда //номер твой ествественно Док.ПолучитьОбъект(); //Тут операции с Док типа добавления строки и т.д. КонецЕсли; Прервать; //Ну типа чтоб цикл дальше не крутился КонецЦикла; А, можно проще, че-то я гоню... Док = Документы.ТутТвойТипДокумента; Док.НайтиПоНомеру("00000001"); Док.ПолучитьОбъект();
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague Небьющаяся игрушка - это игрушка, которой ребенок может разбить все свои остальные игрушки. Последний раз редактировалось Cartman; 10.07.2007 в 19:42. |
![]() |
![]() |
# 2966 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
метод объекта не обнаружен получить объект
![]() а добавлять строку я смогу так же типа новаяСтрока=заказПокупателя.товары.добавить(); // ? видимо делаю че не так: заказПокупателя=документы.заказПокупателя; заказПокупателя.НайтиПоНомеру("00000046"); заказПокупателя.ПолучитьОбъект(); новаяСтрока = заказПокупателя.товары.добавить(); новаяСтрока.номенклатура=справочники.номенклатура.найтиПоКоду("15070") ; единица=справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт."); новаяСтрока.ЕдиницаИзмерения=единица; новаяСтрока.цена=12.20; новаяСтрока.количество=70; новаяСтрока.сумма=12.20*70; не работает. ругается на ПолучитьОбъект(); так ругается, что слишком много фактических параметров: заказПокупателя=документы.заказПокупателя.найтиПоНомеру(00000046); заказПокупателя.получитьОбъект(00000046); новаяСтрока = заказПокупателя.товары.добавить(); новаяСтрока.номенклатура=справочники.номенклатура.найтиПоКоду("15070") ; единица=справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт."); новаяСтрока.ЕдиницаИзмерения=единица; новаяСтрока.цена=12.20; новаяСтрока.количество=70; новаяСтрока.сумма=12.20*70; так ругается, что элемент не выбран: заказПокупателя=документы.заказПокупателя.найтиПоНомеру(00000046); заказПокупателя.получитьОбъект(); новаяСтрока = заказПокупателя.товары.добавить(); новаяСтрока.номенклатура=справочники.номенклатура.найтиПоКоду("15070") ; единица=справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт."); новаяСтрока.ЕдиницаИзмерения=единица; новаяСтрока.цена=12.20; новаяСтрока.количество=70; новаяСтрока.сумма=12.20*70; а так: Док = Документы.заказПокупателя; Док.НайтиПоНомеру("00000046"); Док.ПолучитьОбъект(); {Форма.ФормаДокумента(67)}: Метод объекта не обнаружен (ПолучитьОбъект) Док.ПолучитьОбъект(); сорри, за тупость ![]()
__________________
![]() Последний раз редактировалось VanHelsing; 11.07.2007 в 09:24. |
![]() |
![]() |
# 2967 |
::VIP::
Регистрация: 03.11.2004
Адрес: Москва, Россия
Пол: Male
Сообщения: 982
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Кто-нибудь знает, как можно в типовой 1С Бухгалтерии 8.0 отразить в авансовом отчете факт приобретения билетов + сдачи этих билетов назад в кассу?
Проблема в том, что на закладке "Прочее" в документе "Авансовый отчет" нельзя ввести отрицательные суммы... |
![]() |
![]() |
# 2970 |
Migel Mod Volos
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
VanHelsing, Может и не надо объект получать, может оно уже является объектом.
Метод точно нужен в случае с выборкой, а при найти может и не нужен.
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague Небьющаяся игрушка - это игрушка, которой ребенок может разбить все свои остальные игрушки. |
![]() |
![]() |
# 2971 |
Full Member
Регистрация: 18.09.2003
Адрес: Новосибирск
Пол: Male
Сообщения: 616
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
2 VanHelsing
Если еще актуально, то вот нужный тебе код: Код:
Док = Документы.ЗаказПокупателя.НайтиПоНомеру("00001"); Если Док <> Неопределено Тогда оДок = Док.ПолучитьОбъект(); стр = оДок.Товары.Добавить(); ... оДок.Записать(РежимЗаписиДокумента.Проведение); КонецЕсли;
__________________
Forza Juve! |
![]() |
![]() |
# 2972 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
Flegg, очень актуально. на твой код сказала:
{Форма.ФормаДокумента(67)}: Ошибка при вызове метода контекста (ПолучитьОбъект): Элемент не выбран! оДок = Док.ПолучитьОбъект(); по причине: Элемент не выбран! Cartman, при найти он не работает с ним. нет объекта комментарий, товары и т.п. я уже запарился инет рыть ![]() при найти: Док = Документы.ЗаказПокупателя.НайтиПоНомеру("00000046"); новаяСтрока = Док.Товары.Добавить(); новаяСтрока.номенклатура=справочники.номенклатура.найтиПоКоду("15070") ; единица=справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт."); новаяСтрока.ЕдиницаИзмерения=единица; новаяСтрока.цена=12.20; новаяСтрока.количество=70; новаяСтрока.сумма=12.20*70; Док.Записать(РежимЗаписиДокумента.Проведение); {Форма.ФормаДокумента(73)}: Метод объекта не обнаружен (Записать) Док.Записать(РежимЗаписиДокумента.Проведение);
__________________
![]() Последний раз редактировалось VanHelsing; 11.07.2007 в 13:18. |
![]() |
![]() |
# 2973 |
Migel Mod Volos
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
VanHelsing, делай выборкой, так работает у меня по крайней мере...
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague Небьющаяся игрушка - это игрушка, которой ребенок может разбить все свои остальные игрушки. |
![]() |
![]() |
# 2974 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
Cartman, вот так:
Док = Неопределено; Док = Документы.заказПокупателя.Выбрать("20070709","20070709"); Пока Док.Следующий() Цикл Если Док.Номер = "00000046" Тогда //номер твой ествественно Док.ПолучитьОбъект(); //Тут операции с Док типа добавления строки и т.д. новаяСтрока = док.товары.добавить(); новаяСтрока.номенклатура=справочники.номенклатура.найтиПоКоду("15070") ; единица=справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт."); новаяСтрока.ЕдиницаИзмерения=единица; новаяСтрока.цена=12.20; новаяСтрока.количество=70; новаяСтрока.сумма=12.20*70; КонецЕсли; Прервать; //Ну типа чтоб цикл дальше не крутился КонецЦикла; не ругается что не выбран элемент. но и строка в док-те не появляется. а док.записать() не канает, говорит, что нет такого "записать" ![]()
__________________
![]() Последний раз редактировалось VanHelsing; 11.07.2007 в 13:32. |
![]() |
![]() |
# 2976 |
Full Member
Регистрация: 18.09.2003
Адрес: Новосибирск
Пол: Male
Сообщения: 616
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
2 VanHelsing
Ошибся малость. Ошибка возникает в том случае, если не находит докумнет с нужным номером. Код:
Док = Документы.ЗаказПокупателя.НайтиПоНомеру("00001"); Если Док <> Неопределено И НЕ Док.Пустая() Тогда оДок = Док.ПолучитьОбъект(); стр = оДок.Товары.Добавить(); ... оДок.Записать(РежимЗаписиДокумента.Проведение); КонецЕсли;
__________________
Forza Juve! |
![]() |
![]() |
# 2977 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
Flegg, не ругнулась на сей раз:
Док = Документы.ЗаказПокупателя.НайтиПоНомеру("00000046"); Если Док <> Неопределено И НЕ Док.Пустая() Тогда оДок = Док.ПолучитьОбъект(); новаяСтрока = оДок.Товары.Добавить(); // ... новаяСтрока.номенклатура=справочники.номенклатура.найтиПоКоду("15070") ; единица=справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт."); новаяСтрока.ЕдиницаИзмерения=единица; новаяСтрока.цена=12.20; новаяСтрока.количество=70; новаяСтрока.сумма=12.20*70; оДок.Записать(РежимЗаписиДокумента.Проведение); КонецЕсли; но и ничего не добавила. а номер документа 100% 00000046 попробовал так: Док = Документы.ЗаказПокупателя.НайтиПоНомеру("00000046"); Если Док <> Неопределено И НЕ Док.Пустая() Тогда оДок = Док.ПолучитьОбъект(); сообщить (оДок.комментарий); КонецЕсли; она ничего не сообщила. т.е. выходит, как бы у меня нет такого дока. хз ![]()
__________________
![]() |
![]() |
![]() |
# 2978 |
Full Member
Регистрация: 18.09.2003
Адрес: Новосибирск
Пол: Male
Сообщения: 616
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
2 VanHelsing
У метода НайтиПоНомеру есть второй параметр "Дата". Параметр используется для документов с периодической нумерацией. Так что строка должна выглядеть примерно так: Док = Документы.ЗаказПокупателя.НайтиПоНомеру("00000046",'20070101');
__________________
Forza Juve! |
![]() |
![]() |
# 2979 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
Flegg, вот это реально заработало. сенкс. был бы новосибирск в соседнем районе, угостил бы гинесом. а так тока в репутацию
![]() 1. может как-то можно когда док-т создаешь, получить его номер (дата ясно как получить), тогда бы не пришлось листать журнал документов для посиска. нашел только как задать номер ![]() 2. если кто подскажет как получить список товаров из документа (заказПокупателя) буду признателен.
__________________
![]() Последний раз редактировалось VanHelsing; 12.07.2007 в 10:11. |
![]() |
![]() |
# 2980 |
Full Member
Регистрация: 18.09.2003
Адрес: Новосибирск
Пол: Male
Сообщения: 616
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
2 VanHelsing
1. Если нужно получить номер документа до его записи, то используй метод УстановитьНовыйНомер(<Префикс>), ну а дальше Док.Номер 2. Массив ссылок на номеклатуру из табличной части можно получить через Док.Товары.ВыгрузитьКолонку("Номенклатура");
__________________
Forza Juve! |
![]() |
Теги (метки) |
1с бухгалтерия, 1с предприятие |
|
|