IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Обсуждение программ (http://www.imho.ws/forumdisplay.php?f=3)
-   -   1С:Бухгалтерия. Вопросы и ответы (http://www.imho.ws/showthread.php?t=85009)

EnigMan 22.08.2004 17:11

И еще одна непонятка вылезла. Я делал ценники в ТиСе. В документе "ценник" использовал поле с названием цена. При печати ценников выскакивает сообщение о неизвестном операторе
Цитата:

Цена<<?>>
Но все печаталось правильно, и ссылки на строку с ошибкой не давалось. Пытаясь найти причину я вообще отказался от поля с именем цена, и от всех переменных с таким буквосочетанием. Теперь выскакивает сообщение что объект цена не найден. Все печатается. Я облазил всю печатную форму с попыткой найти ссылку там, но ничего не нашел.
Хотелось бы спорсиь, сталкивался ли ктонить с таким, и вчем может быть дело. Это мешант не сильно, но всетаки напрягает

Fatboy 23.08.2004 00:03

Цитата:

Сообщение от EnigMan
И еще одна непонятка вылезла. Я делал ценники в ТиСе. В документе "ценник" использовал поле с названием цена. При печати ценников выскакивает сообщение о неизвестном операторе Но все печаталось правильно, и ссылки на строку с ошибкой не давалось. Пытаясь найти причину я вообще отказался от поля с именем цена, и от всех переменных с таким буквосочетанием. Теперь выскакивает сообщение что объект цена не найден. Все печатается. Я облазил всю печатную форму с попыткой найти ссылку там, но ничего не нашел.
Хотелось бы спорсиь, сталкивался ли ктонить с таким, и вчем может быть дело. Это мешант не сильно, но всетаки напрягает

Скорее всего пенка в том, что цена имеет категорию и как правило переодическое значение. Соотвтетсвенно нужно использовать оператор "Получить(Дата)". И кстати есть ещё одна обработка печати ценников: одна в теле оператора, другая в каталоге печатных форм!

Cartman 23.08.2004 09:27

Цитата:

EnigMan:
Цена<<?>>
Цены.Цена.Получить(РабочаяДата())
Это если в таблице.
Если в модуле - то после создания объекта можно написать так: Цены.ИспользоватьДату(РабочаяДата())
А потом можно просто обращаться к цене Цены.Цена

Murzilka 23.08.2004 11:12

Цитата:

EnigMan:
Цена<<?>>
В добавок к вышесказанному.
Ошибка без указания номера строки вылезает в двух случаях.
1. Ошибка синтаксиса таблицы. Поиск стандартный.
2. Ошибка синтаксиса формы документа, элемента. Может быть найдена путем "Поиск во всех текстах" с указанием "Формулах таблиц, Формулах диалогов". В полученном списке ищешь необходимую тебе форму и делаешь правки

Клейстер. 25.08.2004 11:07

Народ, подскажите как добраться до записей "Журнала регистрации". Пишу обработку обмена данными и нужно знать какие документы были изменены.

Murzilka 25.08.2004 11:54

Цитата:

Клейстер.:
Народ, подскажите как добраться до записей "Журнала регистрации". Пишу обработку обмена данными и нужно знать какие документы были изменены
\Syslog\1cv7.mlg и есть журнал регистрации. Открывай на чтение как обычную текстовку и выбирай то что тебе нужно. Только, ИМХО, гиморно это слишком. Файлик с каждым днем все больше становится, значит надо будет его укорачивать, либо ворочать этакую тяжесть. У меня, при проведении документа, создается элемент справочника с указанием оного. После переноса - справочник очищается. А запихать 3 строчки в Глобальный Модуль мне проще, чем гимороиться с выборкой из 100 метрового файла.
ЗЫ. Хотя ежели ты желаешь универсальную обработку делать - мой метод тебе не подойдет :)

Клейстер. 25.08.2004 12:05

2 Murzilka а никак нельзя по другому, про ручной гемморой мне известно, а так чтоб по-проще... Ентот 1cv7.mlg мурыжить счастья ноль, должен же быть др. способ. Проблема то в том, что заказчик как черт от ладана шарахается от всяческих изменений MD-шника. Понять можно, хотит чтоб автоматически обновления работали, а мне - хоть на стенку лезь...

Murzilka 25.08.2004 12:16

Цитата:

Клейстер.:
а никак нельзя по другому, про ручной гемморой мне известно, а так чтоб по-проще...
Насколько я знаю - никак :( Стандартное 1с-овское - тож самое, только написаное на Си разработчиками, потому и работает быстрее

Fatboy 25.08.2004 13:07

Цитата:

Сообщение от Клейстер.
Понять можно, хотит чтоб автоматически обновления работали, а мне - хоть на стенку лезь...

А не мог бы ты сформулировать задачу пошире? Просто есть МОД и УИРБД, не подойдет тебе такое решение?

Клейстер. 25.08.2004 17:40

2 Fatboy вообще све довольно прозаично: одна контора, 2 здания очень далеко друг от друга: в одном производство, в др. бухгалтерия. Нужно организовать автоматический обмен документами. В смысле одна база формирует пакет, отсылает его на эл. ящик. Другая база получает почту, дастает пакет, создает доки, формирует эхо - его на ящик... ну вобщем система нипель. Самый прикол, что доки и базы абсолютно разные, биш там из одного в другое метаморфозы прут :) А с журналом регистрации я уж разобрался еле-еле.

EnigMan 25.08.2004 19:17

Цитата:

Цена<<?>>
Мистика! Мистика!! Мистика!!!

Как оказалось цена было прописано в свойствах внедреного графического объекта в поле ТЕКСТ. Как и почему 1С пыталась его обработать не понятно. Поиск по таблице естественно тоже результата не давал. Но ктоб мог подумать??? (или я чего-то незнаю...)

Fatboy 25.08.2004 22:51

Цитата:

Сообщение от Клейстер.
автоматический обмен документами

Пишешь то хоть на XML?

Клейстер. 26.08.2004 12:21

2 FatBoy нет.

Fatboy 26.08.2004 13:26

Цитата:

Сообщение от Клейстер.
2 FatBoy нет.

Зря! Такое решение напрашивается сразу! Гибчее оно и стандарт CommerceXML штука вполне удобоваримая. Тем более. что все средства(окромя самого парсера ессно) вшиты в более-менее свежие релизы 1С.

Клейстер. 26.08.2004 13:43

2 Fatboy знаю, но конкретно тут не вижу смысла.

Fatboy 26.08.2004 16:47

Цитата:

Сообщение от Клейстер.
конкретно тут не вижу смысла.

Тебе виднее, но у меня была закавыка с текстовыми файлами, а уж с ДБФ вааще не хоцца связываться, ибо код удлиняется. ИКСЭМЭЛЬ имхо достаточно быстр и ядрен для решения подобных задач. Тем более, что он оптимизирован для передачи по e-mail. Но сам решай - делать-то всё одно тебе! :biggrin:

user2004 27.08.2004 13:16

Хэлп :) Есть документ. При заполнении табличной части в 1 колонку выбираю элемент из справочника. Есть процедура при изменении этого элемента, которая при выборе пишет число в следущую колонку.Мне надо чтоб в 3 колонку также автоматически писался реквизит для этого элемента из справочника.Как это сделать? Те я пишу в процедуре...типа ячейка = ...а как обратится к реквизиту?или так нельзя?

Murzilka 27.08.2004 13:34

Т.к. на строке и элементе ты уже спозиционирован (при выборе элемента справочника), то можешь просто написать
Цена=Номенклатура.Цена
где Цена - третья колонка, Номенклатура - первая колонка, Номенклатура.Цена - нужный тебе реквизит.
ЗЫ. Если реквизит периодический - выше было описано как к нему обращаться

Cartman 27.08.2004 13:37

Ну например. Есть у тебя раквезит табличной части (ТЧ) "Товар".
В формулу этой колонки пишем Заполнить()
Далее в модуле:
Процедура Заполнить()
ЕдиницаИзмерения = Товар.БазоваяЕдиницаИмерения;
Цена = Товар.Цена.Получить(ДатаДок);
Количество = 1;
Конецпроцедуры
Ну и соответственно Цена, ЕдиницаИзмерения, Количество - реквизиты ТЧ, БазоваяЕдиницаИмерения, Цена (для примера периодический элемент) - Реквизит справочника.

Murzilka 27.08.2004 14:00

Цитата:

Migel M. Volos:
Цена = Товар.Цена
Murzilka:
Цена=Номенклатура.Цена
Гы... Вот она вся прелесть 1С и ихнего "шизанутого" призыва к стандартизации названий переменных :( Суть та же что и у тебя, но, т.к. сижу на комплексной, мне слово "Товар" даж в голову не приходит. Ибо "Номенклатура" везде (что ОС, что НМА, что Услуга, что Номенклатура). А в бухгалтерии я уже все мозги себе вывернул. Один и тот же справочник в разных документах по разному :(

Cartman 27.08.2004 14:13

Цитата:

Murzilka:
мне слово "Товар" даж в голову не приходит
Справочник всегда назывался Номенклатурой, но вот реквизит документа они всегда называют товаром.
А вообще я всегда проверяю названия реквизитов. Мало ли чего они там напридумывают.

Fatboy 27.08.2004 14:37

Цитата:

Сообщение от user2004
Хэлп :) Есть документ.

Мдя-я-я! Немного невнятно! Приаатачь кусок текста модуля с искомым кодом - решим прям счас!
Ну если в лоб - то есть процедура "ПриВыбореЯчейкиТаблицы", так проще пересчитывать значения остальных реквизитов. Или, как уже сказали выше, через пересчет формулы значения реквизита в табличной части!

Цитата:

Сообщение от Murzilka
ихнего "шизанутого" призыва к стандартизации названий

Гы! А ты производство изнутри видел?
:contract:

user2004 27.08.2004 15:23

Процедура ПереченьНоменклатурыНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти=ЭлементыФормы.ПереченьНоменклатуры.ТекущиеДанные;
СтрокаТабличнойЧасти.Цена=РозничнаяЦена(Дата,Элемент.Значение);
РассчитатьСумму(СтрокаТабличнойЧасти);
СтрокаТабличнойЧасти.ВидНоменклатуры=???
КонецПроцедуры

Что мне надо написать вместо знаков вопроса? Не получается как тут пишут :( Реквизит непериодический.У всех элементов справочника всего 2 значения реквизита,выбираемые из перечисления. Элемент 1 колонки выбирается пользоветелем из справочника. Запускается эта процедура для заполнения цены. ВОт ее и хочу сделать чтоб заполняла еще и реквизит.

А где эта блин формула?:(

Murzilka 27.08.2004 15:30

Цитата:

Migel M. Volos:
Справочник всегда назывался Номенклатурой, но вот реквизит документа они всегда называют товаром.
А вообще я всегда проверяю названия реквизитов. Мало ли чего они там напридумывают
Дыкть, в комплексной, во всех документах он назван "Номенклатура", и нигде не упоминается "Товар" или "Услуга". :) Ладно, лирика все это :) Все равно каждый раз приходится ковыряться дабы работало. Перетаскиваю свой документ вызывающий функцию глобального модуля в бухгалтерию. Названия функции совпадают, переменные по названиям тоже. Но не работает. Под одним и тем же названием переменной передаются разные типы данных... :)
Цитата:

Fatboy:
Гы! А ты производство изнутри видел?
Видел... Давно... Когда оно было еще 1.72... Проникся :yees:

user2004 27.08.2004 15:37

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

Murzilka 27.08.2004 15:43

Цитата:

user2004:
Процедура ПереченьНоменклатурыНоменклатураПриИзменении(Элеме нт)
СтрокаТабличнойЧасти=ЭлементыФормы.ПереченьНоменкл атуры.ТекущиеДанные;
СтрокаТабличнойЧасти.Цена=РозничнаяЦена(Дата,Элеме нт.Значение);
РассчитатьСумму(СтрокаТабличнойЧасти);
СтрокаТабличнойЧасти.ВидНоменклатуры=???
КонецПроцедуры
Ееееееее... Как это тебя угораздило? :)
Недогоняю я. Это у тебя таблица задана на форме или ты с табличной частью так изголяешься?
Если таблица, то тебе надо сначала текущую строку получить.
Хотя, как мне кажется,
СтрокаТабличнойЧасти.ВидНоменклатуры=Элемент.Значение2
должно бы сработать... Проще в отладчике посмотреть, будет тебе ответ на Элемент.Значение2 возвращаться до РассчитатьСумму(СтрокаТабличнойЧасти) или нет.
Хотя может я чего опять недогнал и должно быть Элемент.Значение.Реквизит

Cartman 27.08.2004 15:44

Цитата:

user2004:
СтрокаТабличнойЧасти.ВидНоменклатуры=???
Видимо: Элемент.ВидНоменклатуры;
Или как в справичнике называется реквизит.
И еще проверь тип колонки, если ты пытаешься туда перечисление запихать а у тебя выбран справочник какой нить - то ничего у тебя не получится. А вообще немного не понятно, зачем так сложно сделано.
Опиши типы переменных и реквезитов.
Цитата:

Murzilka:
Все равно каждый раз приходится ковыряться дабы работало
И не говори... :)
Fatboy, с ВИПом тебя :) :beer:

Murzilka 27.08.2004 15:57

Цитата:

user2004:
Логичнее было бы если б написать
СтрокаТабличнойЧасти.ВидНоменклатуры=Справочники.Н оменклатура.ВидНоменклатуры;
только так не работает
Может и логичнее, только в этом случае не вижу привязки к конкретному элементу

Цитата:

Migel M. Volos:
Fatboy, с ВИПом тебя
Присоеденяюсь :beer: (сорьки, сразу не заметил) Ежели к Йохансону соберешься, звякни, может где и пересечемся, пивка пропустим :)

user2004 27.08.2004 16:46

работает только =СтрокаТабличнойЧасти.Номенклатура.ВидНоменклатуры;
С Элемент не работает. Реквизит справочника выбирается из Перечисления. Элемент - строка.
Это все в табличной части документа. И вообще я тока учу 1С, поэтому могу чо-то и делать через одно место :)

Murzilka 27.08.2004 16:57

Цитата:

user2004:
работает только =СтрокаТабличнойЧасти.Номенклатура.ВидНоменклатуры
Звиняй родной... Не признал... Ты бы сразу указал что под 8-кой пишешь, я-то с точки 7.7 объяснить пытался, а восьмерку даже и не ковырял еще толком :idontnow:

Fatboy 28.08.2004 01:36

Цитата:

Сообщение от user2004
Написал
СтрокаТабличнойЧасти.ВидНоменклатуры=СтрокаТабличнойЧасти.Номенклатура .ВидНоменклатуры;
КонецПроцедуры
и заработало. ТОлько нефига не понимаю почему:( Логичнее было бы если б написать
СтрокаТабличнойЧасти.ВидНоменклатуры=Справочники.Номенклатура.ВидНомен клатуры;
только так не работает:(


Логично! Просто в параметрах Строки табличной части уже передан элемент справочника и его не надо позиционировать в самом справочнике. Поэтому и заработало. Ты уж извини действительно не сразу признал 8-ку.

2 Murzilka & Migel M. Volos
Спасибо за поздравления. Даст бог - свидимся! :beer:

user2004 28.08.2004 12:07

Да ладно :) Фигня :) Я просто забываю, что большинство все еще на 7.7 сидит :) Кстати, никто не сдавал экзамен тут по 8-ке на специалиста по платформе? А то мне предстоит такая фигня, а я не знаю чо там и как делать :(

Цитата:

Сообщение от user2004
Да ладно :) Фигня :) Я просто забываю, что большинство все еще на 7.7 сидит :) Кстати, никто не сдавал экзамен тут по 8-ке на специалиста по платформе? А то мне предстоит такая фигня, а я не знаю чо там и как делать :(

ЗЫ: Присоединяюсь к поздравлениям :)

Fatboy 28.08.2004 12:39

Цитата:

Сообщение от user2004
Кстати, никто не сдавал экзамен тут по 8-ке на специалиста по платформе?

У меня чел в конторе сдавал - могу выяснить! Сам то уж видна не сподоблюсь! Шипка некада! Спасибо за поздравления!

user2004 28.08.2004 13:23

Спроси! Может он сможет вкратце описать как делать задачу с экзамена типовую? Типа основные моменты?А то я никакой литературы по этому не нашел пока что.

Клейстер. 29.08.2004 15:38

Проблема с почтой!!!
Сцуть: при запуске метода Подключиться() Outlook Express 6.0 тутже сперва получает и отправляет ВСЮ почту со всех аккаунтов!!! Соответственно когда я пишу ВыбратьСообщения(); выбирать то ужо нечего!!! Усе ужо получено, за сим облом. Как сделать так, чтоб при подключении аутглюк не доставлял почту?

Кусок кода:

Процедура ЗагрузитьПочту()
Если ЗагрузитьВнешнююКомпоненту(КаталогИБ() + "v7plus.dll") <> 1 Тогда
Если ЗагрузитьВнешнююКомпоненту(КаталогИБ() + "ExtForms\" + "v7plus.dll") <> 1 Тогда
Если ЗагрузитьВнешнююКомпоненту(КаталогПрограммы() + "v7plus.dll") <> 1 Тогда
Предупреждение("Компонента v7plus.dll не найдена!");
КонецЕсли;
КонецЕсли;
КонецЕсли;

Попытка
Объект_Почта = СоздатьОбъект("AddIn.V7Mail");
Исключение
Предупреждение("Не удалось создать объект Addin.V7Mail!");
Возврат;
КонецПопытки;
Объект_Почта.Подключиться();
Объект_Почта.ВыбратьСообщения();
Пока Объект_Почта.ПолучитьСообщение() = 1 Цикл
................................................................
КонецЦикла;
Объект_Почта.Отключиться();
КонецПроцедуры

Клейстер. 29.08.2004 18:19

Народ извиняйте за беспокойство :)) Все ужо прояснил. Для тех кто будет мучится с аутглюком версии 6.0 знайте: что бы вы ни указали в параметрах метода Подключится() использоватся в любом случае будет аккаунт по умолчанию (тупость). А для того, чтоб не получать за всех и вся почту, в свойствах всех аккаунтов, кроме используемого 1С снимайте галку "использовать для получения или синхронизации". Вооот... Да, чуть не забыл с TheBat версии 2.10.01 получение почты не работает, а отправка - работает. Спасибо за внимание :))

Fatboy 31.08.2004 11:09

Ещё раз вопрос к тем, кто работал или работает с Штрих-М Кассир! При выгрузке не создается файл "*.req" из-за этого не формируются частично проводки. Была ли у кого подобная ситуация и не зависит ли это от кассового аппарата, точнее его исправности?

user2004 31.08.2004 15:38

1) Как написать с клавиатуры вертикальную палку, когда пишешь текст запроса? Замучился копированием вставлять :(
2) Кто-нить делал примеры по книге Радченко "Практическое пособие разработчика"? У меня там глава отчетов не совпадает... нету вкладки при создании макета, да и текст который конструкторы формируют отличается. Может это быть из-за разницы версий?

ASol 31.08.2004 15:48

user2004
Цитата:

user2004:
Как написать с клавиатуры вертикальную палку, когда пишешь текст запроса? Замучился копированием вставлять
В английской раскладке Shift + "\" который возле Backspace.

user2004 01.09.2004 21:53

пасиб :)
А есть тут среди читающих это раздел спецы по 8-ке?


Часовой пояс GMT +4, время: 00:35.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.