imho.ws |
![]() |
![]() |
![]() |
# 1 |
Member
Регистрация: 02.12.2003
Адрес: Там где истина
Сообщения: 381
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1С:Бухгалтерия. Вопросы и ответы
1С:Предприятие - Вопросы и ответы (1С:Бухгалтерия)
Если есть какие либо вопросы по работе с комплексом программ 1С:Предприятия, всегда готовы помочь найти ответы! Если вы просите совет, то обязательно указывайте номер релиза предприятия, а также конфигурацию и её номер релиза. Ссылки на свежие релизы и прочие запросы постить здесь!
__________________
Молчание не всегда доказывает присутствие ума, но доказывает отсутствие глупости. (с) Буаст |
![]() |
![]() |
# 3061 |
Newbie
Регистрация: 12.09.2007
Сообщения: 11
![]() |
Хочу подобрать конфигурацию для кафешки. пока склоняюсь к тем что наиболее популярны Рарус:Общепит, Рарус:Ресторан+Бар+Кафе, и аналогичной( на мой неискушенный взгляд) предукты Штрих-М: Ресторан front/back office. интересно услышать доводы за и против использования первой, второй или какой-то другой.
|
![]() |
![]() |
# 3062 |
Member
Регистрация: 21.11.2003
Адрес: 45-я параллель
Пол: Male
Сообщения: 230
![]() |
Вопрос по Предприятию 7.7
Что надо: Из ряда форм модально открывается форма поиска. По завершению поиска форма поиска закрывается, а список найденных объектов передается открывшей фарме. Сейчас я делаю так. В глобальном модуле создаю глобальную переменную. Форма поиска записывает в эту переменную результат своей работы и закрывается. Можно ли сделать так, чтобы результат передавался напрямую, не используя глобальные переменные?
__________________
![]() ![]() |
![]() |
![]() |
# 3063 |
Migel Mod Volos
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
EnigMan, смотри сиснтаксис ОткрытьФорму().
Я не знаю что именно ты открываешь, но тебе надо передать туда Контекст формы. В открывшейся форме он будет доступен как Форма.Параметр.
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague Небьющаяся игрушка - это игрушка, которой ребенок может разбить все свои остальные игрушки. |
![]() |
![]() |
# 3064 |
Member
Регистрация: 21.11.2003
Адрес: 45-я параллель
Пол: Male
Сообщения: 230
![]() |
Cartman, как открыть форму и передать ее контекст я знаю. Вопрос в том как из вновь открытой формы вернуть данные в открывающую форму.
Поясню на примере. Есть некий обширный справочник абонентов (ок 27000 записей) Есть отчет который отбирает из этого справочника записи по заданным критериям, назовем его "Поисковик", и есть другие отчеты, в которых на основе списка абонентов строятся бухгалтерские и технические отчеты. Для формирования списка абонентов все такие отчеты вызывают отчет "Поисковик". Сейчас, чтобы передать список абонентов из "Поисковик" в вызывающий отчет, я использую глобальную переменную, но это имхо не очень красиво, можно ли вернуть из "Поисковик" список непосредственно в вызвавшую форму?
__________________
![]() ![]() |
![]() |
![]() |
# 3065 |
::VIP::
Регистрация: 30.08.2005
Адрес: рунет
Пол: Male
Сообщения: 190
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
EnigMan, просто запиши возвращаемое значение в Форма.Параметр, тогда сможешь по закрытию вызванной формы прочитать это значение из той переменной, которую задавал для передачи контекста при вызове ОткрытьФорму() - и все.
Например: Код:
ОткрытьФорму("Обработка.НазваниеОбработки", ПеременнаяКонтекста); Если ПеременнаяКонтекста <> 100 Тогда ПереданноеЗначение = ПеременнаяКонтекста; КонецЕсли; Код:
Процедура ПриОткрытии() КонтекстВызвавшейФормы = Форма.Параметр; ... КонецПроцедуры Процедура ПриЗакрытии() ... Форма.Параметр = ВозвращаемоеЗначениеДляВызова; КонецПроцедуры
__________________
Хорошую информацию трудно добыть.
Сделать с ней что-нибудь - еще труднее. Люк Скайуокер |
![]() |
![]() |
# 3066 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
вопрос к гуру 8.1, почти поломал голову, но смог получить только объект строка из регистра сведений:
док=документы.заказПокупателя.найтиПоНомеру("х0000014","20070910"); типЦены=справочники.типыЦенНоменклатуры.найтиПоНаименованию(док.типЦен ); можно ли как-то по переменной типЦены получить цену на номенклатуру (например справочники.номенклатура.найтиПоКоду("2705")) из регистраСведений. если пытаюсь построить структуру отбора и выборку по значению типЦены, то возвращенных строк 0: Отбор=новый структура; Отбор.Вставить("ТипЦен",ТипЦен.Наименование="Цена 3"); рег=РегистрыСведений.ЦеныНоменклатуры.СрезПоследних(текущаяДата(),отбо р); сообщить(рег.количество()); ![]()
__________________
![]() Последний раз редактировалось VanHelsing; 18.09.2007 в 15:59. |
![]() |
![]() |
# 3067 |
Newbie
Регистрация: 27.07.2004
Сообщения: 33
![]() |
Приветствую всех!)
Не подскажете как решить такую проблему... У меня стоит 1С Предприятие 7.7 (7.70.027), под ним стоит конфигурация Бухгалтерский учет 4.5 (7.70.486) и необходимо использовать Зарплата + Кадры 2.3. Есть ключи HASP которые шли с Бухгалтерией и с Зарплата и Кадры. При установке 2-х ключей Зарплата и Кадры пишет не найден ключ... При установке 1 ключа от Зарплата и Кадры не запускается само Предприятие... При установке Зарплата и Кадры на отдельный Компьютер все в прядке... что сделать чтоб это все у меня на одном компе заработало? |
![]() |
![]() |
# 3068 |
Migel Mod Volos
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Laborant, нужно установить ядро бухии и зарплаты в разные папки и сделать 2 ярлыка на запуск одного и другого.
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague Небьющаяся игрушка - это игрушка, которой ребенок может разбить все свои остальные игрушки. |
![]() |
![]() |
# 3069 |
Newbie
Регистрация: 17.04.2007
Сообщения: 17
![]() |
VanHelsing, чтобы твой код заработал, тебе нужно написать так:
док=документы.заказПокупателя.найтиПоНомеру("х0000014","20070910"); типЦены=док.типЦен; Номенклатура = справочники.номенклатура.найтиПоКоду("2705"); Отбор=новый структура("ТипЦен, Номенклатура", типЦены, Номенклатура); рег=РегистрыСведений.ЦеныНоменклатуры.СрезПоследних(текущаяДата(),отбо р); сообщить(рег.количество()); Но лучше использовать для этого запрос. |
![]() |
![]() |
# 3070 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
D1C, почему лучше запрос? я из пхп обращаюсь к 1с, запросы мне не очень понравились
![]() верно ли, получить номенклатуру рег.выгрузитьКолонку(5)[0];
__________________
![]() Последний раз редактировалось VanHelsing; 19.09.2007 в 07:58. |
![]() |
![]() |
# 3071 |
::VIP::
Регистрация: 03.11.2004
Адрес: Москва, Россия
Пол: Male
Сообщения: 982
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Вопрос по программе 1С Зарплата и Кадры 7.70.274.
В отчете "Свод проводок и данных налогового учета" при попытке снять галку "Сводные проводки" программа не формирует никакого отчета (мелькают синие надписи, затем происходит останов при горящей надписи "Обработка данных о проводках"). При нажатой галке "Сводные проводки" отчет формируется... В чем может быть проблема? |
![]() |
![]() |
# 3072 |
Newbie
Регистрация: 17.04.2007
Сообщения: 17
![]() |
VanHelsing, для получения любых данных из базы лучше использовать запросы - это рекомендация фирмы 1С. Так работает быстрее.
Что касается обращения из пхп, я не пробовал. Но если у тебя обычный код работает, то и запрос сработает. Скорее всего у тебя в запросе что-то напутано. А получить Номенклатуру можно как ты написал, но лучше: рег[0].Номенклатура (не будет делаться лишняя операция выгрузки в массив) добавлено через 11 минут Oleg+, это вообще довольно глючный отчет, если не ставить галочку "Сводные проводки". Если в организации много сотрудников, даже если он формируется, то суммы по налогам часто бывают неверными. Для получения сумм начисленных налогов с ФОТ я всегда устанавливал внешний отчет taxsheet.ert (с ИТСа). Он никогда не подводил. |
![]() |
![]() |
# 3073 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
D1C, сенкс. попробую. запрос из пхп тоже работает, мне его синтаксис не нравится. описаным тобой выше способом инфа получается мгновенно, в отличие от моего перебора циклом. рег[0].номенклатура сейчас попробую
![]() снова появился вопрос по функции текущаяДата(). я ваще не въезжаю в каком формате 1с работает с датой... в одном случае (в частности при установки даты отгрузки она воспринимает ее в формате юникс конвертнутом в date() функция пхп, в случае с отбором вообще не понятно. из самой 1с она ее воспринимает как строку вида '20070920', а при передаче даты извне перепробовал по моему все виды. даже пробовал передать строку вида "'20070920'". моск плавицо толку нет ![]() замаялся бадацо... если сделать срезПоследних() без указания даты и отбора, то все работает, остается только сделать выборку из срезПоследних(). чем это можно реализовать? заранее сенкс
__________________
![]() Последний раз редактировалось VanHelsing; 20.09.2007 в 09:18. |
![]() |
![]() |
# 3075 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
D1C, дата() не могу использовать. я пытаюсь понять в каком виде 1с воспринимает даты потому, что мне надо передать дату через com-объект. в некоторых случаях воспринимается передачей через функцию пхп date("Ymd"), где Ymd дата вида ГГГГММДД. в срезПоследних(date("Ymd"),отбор) 1с возвращает ошибку о несоответствии типов данных параметр 1. т.е. дата ей не нравится
![]() пробую решить таким вариантом: Код:
док=документы.заказПокупателя.найтиПоНомеру("х0000014","20070910"); типЦены=док.типЦен; наименованиеНоменклатуры = справочники.номенклатура.найтиПоКоду("2705"); рег=РегистрыСведений.ЦеныНоменклатуры.СрезПоследних(); сообщить(""+"количество записей: "+рег.количество()); сообщить(""+"поиск номенклатуры: "+наименованиеНоменклатуры); для счетчик=0 по рег.количество()-1 цикл если рег[счетчик].номенклатура=наименованиеНоменклатуры тогда если рег[счетчик].типЦен=типЦены тогда сообщить(""+рег[счетчик].типЦен+" "+рег[счетчик].номенклатура+" "+рег[счетчик].цена); прервать; конецЕсли; конецЕсли; конецЦикла; ![]() может есть какие другие варианты. задача в следующем: через веб-интерфейс манагер логиница в 1с (через ком-соединение), ему выдается журнал заказов покупателей. он выбирает док, выбирает заказчека (от заказчека выбирается договор, организация из договора и тип цен), при подборе номенклатуры все тоже ок, но возникает трабла когда я хочу получить цену номенклатуры на текущий момент. хер знает че с ней делать, хоть выгружать в отдельную таблицу, загружать ее в мусикл и оттуда по коду выцарапывать. осталась проблема с ценой, а так документ полноценно работает через веб ![]()
__________________
![]() Последний раз редактировалось VanHelsing; 20.09.2007 в 11:45. |
![]() |
![]() |
# 3076 |
::VIP::
Регистрация: 03.11.2004
Адрес: Москва, Россия
Пол: Male
Сообщения: 982
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Господа, есть ли у кого-нибудь опыт перевода конфигурации 1С 7.7 Заказчик строительства на рельсы 1С 8.0 ?
Какое типовое решение 1С тут применимо? Хотелось бы поставить 1С Бухгалтерию 8.0 типовую, но потянет ли она строительную специфику? Зарплата в организации будет считаться в 1С Зарплата и управление персоналом 8.0, проводки по зарплате будут выгружаться из ЗиУП. |
![]() |
![]() |
# 3077 | |
Junior Member
Регистрация: 05.02.2004
Адрес: Moscow
Пол: Male
Сообщения: 77
![]() ![]() ![]() ![]() |
Цитата:
8-ка легко выгружает данные в Зарплату. Тут проблем точно нет.
__________________
Так будет не всегда! Последний раз редактировалось Demented; 20.09.2007 в 13:01. |
|
![]() |
![]() |
# 3078 |
Newbie
Регистрация: 17.04.2007
Сообщения: 17
![]() |
VanHelsing, СрезПоследних() без указания даты вернет последние значения. Скорее всего это и есть значения на текущую дату. Поэтому мучиться передавать дату тебе не надо.
Теперь по цене. Зачем тебе получать весь регистр, если тебе нужна только цена? На основании моего прошлого кода тебе нужно написать так: док=документы.заказПокупателя.найтиПоНомеру("х0000014","20070910"); типЦены=док.типЦен; Номенклатура = справочники.номенклатура.найтиПоКоду("2705"); Отбор=новый структура("ТипЦен, Номенклатура", типЦены, Номенклатура); рег=РегистрыСведений.ЦеныНоменклатуры.СрезПоследних( ,Отбор); // Или если хочешь именно текущую дату рег=РегистрыСведений.ЦеныНоменклатуры.СрезПоследних(ТекущаяДата(),отбо р); Цена = ?(рег.количество() > 0, рег[0].Цена, 0); Последний раз редактировалось D1C; 20.09.2007 в 16:47. |
![]() |
![]() |
# 3079 |
Junior Member
Регистрация: 18.04.2005
Сообщения: 157
![]() ![]() ![]() ![]() |
D1C, с указанием даты согласен, что без нее вернет тот же срез последних, но, если я ей передаю срезПоследних без даты, но с указанием отбора, или с указанием даты в любом виде (перепробовал уже дофига вариантов, даже док.дата) она ругается, что несоответствие типов (на дату). варианты, которые она внутри себя понимает тоже не канают. срезПоследних(,отбор) ругается. нигде не могу найти как работать с этим безобразием через com-соединитель. у них самих примеры для работы с VB, может с ним и работает нормально, видать и 1с писали на нем же
![]() из журнала документов док-ты я выбираю так: $Выборка=$документ->выбрать($startDate,$endDate); // где даты обе выставляются в формате "ГГГГММДДЧЧММСС" и все работает, можно ли как-то таким же макаром выбрать цены из регистраСведений?
__________________
![]() Последний раз редактировалось VanHelsing; 21.09.2007 в 10:58. |
![]() |
Теги (метки) |
1с бухгалтерия, 1с предприятие |
|
|