Вопрос № 95021: Создаю правила обмена между самописной конфой (источник) и стандартной бухгалтерией 7.7(приемник) с помощью Конвертации данных
Нужно создать правила для переноса ставки НДС. Проблема в том, что в источнике ставка ндс это число, а в приемнике - с...Вопрос № 95040: Уважаемые Эксперты!!!
Я начинающий программист в 1С, пишу свою конфигурацию (с нуля).
З/плата сотрудника указывается в справочнике "Должности и профессии", при этом оклад указывается в соответствующей графе самого справочн...Вопрос № 95051: Здравствуйте!!!
Скажите, можно ли в 1с 7.7 програмно указать, что нужно печатать только нечетные или только четные страницы или хотя - бы просто номера страниц, которые нужно выводить на печать.
также, можно ли узнать количество страниц в сфо...Вопрос № 95055: Здравствуйте уважаемые эксперты! Пытаюсь использовать матричный принте для печати на бумажной ленте. У меня пока что результат такой: все печатается, то неполучается остановить принтер в месте отрыва, бумагу протягивает на формат А4. Уже пытался прои...Вопрос № 95120: Здравствуйте уважаемые эксперты. Есть проблема. В бухгалтерии 7.7 нет в разделе специализированных
отчетов справки о доходах 2-НДФЛ. В чем дело даже местные партнеры 1С объяснить не могут. Ставили систему в апреле этого года. Программист от партнера ...
Вопрос № 95.021
Создаю правила обмена между самописной конфой (источник) и стандартной бухгалтерией 7.7(приемник) с помощью Конвертации данных
Нужно создать правила для переноса ставки НДС. Проблема в том, что в источнике ставка ндс это число, а в приемнике - справочник.
Правила я создала, но они срабатывают только на ставки 10 и 18%, а когда 0 - то в приемнике получается пустое значение, а не Без НДС. Как исправить это? Какое условие написать, чтобы подставлялось Без НДС.
Отправлен: 13.07.2007, 11:26
Вопрос задала: Katherine (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: DIMa@XX
Здравствуйте, Katherine!
Нужно в правиле конвертации свойств поля НДС, в событии при выгрузке написать конвертацию.
Что-то вроде
Если Источник.СтавкаНДС = 0 Тогда
Значение = Перечисления.СтавкиНДС.БезНДС;
Иначе
Отказ=Истина;
КонецЕсли;
--------- Hайден неизвестный драйвер, воткните какое-нибудь устройство!
Ответ отправил: DIMa@XX (статус: 6-ой класс)
Ответ отправлен: 13.07.2007, 11:50 Оценка за ответ: 4
Отвечает: Elric
Здравствуйте, Katherine!
Насколько я понимаю, конвертация принимает ноль за пустое значение и поэтому не обрабатывает. Проставьте замену ставки 0 на какое-то другое число и при загрузке пропишите сопоставление этого числа ставке БезНДС.
--------- Мирный атом в КАЖДЫЙ дом!
Ответ отправил: Elric (статус: Специалист)
Ответ отправлен: 14.07.2007, 17:56
Вопрос № 95.040
Уважаемые Эксперты!!!
Я начинающий программист в 1С, пишу свою конфигурацию (с нуля).
З/плата сотрудника указывается в справочнике "Должности и профессии", при этом оклад указывается в соответствующей графе самого справочника, а часовая тарифная ставка выбирается из другого справочника "ЧТС". В диалоге записи нового сотрудника создал поле "Оплата", тип значения - Число, длина - 10, точность - 2. В данное поле при помощи нижеуказанной процедуры ЗП() вносится значение зарплаты работника:
//========================
Процедура ЗП()
Перем Опл;
Если ПустоеЗначение(Должность.ЧТС.Наименование)=1 Тогда
Опл = Должность.Оклад;
Иначе
Опл = Должность.ЧТС.Наименование;
КонецЕсли;
Оплата = Формат((Опл),"Ч10.2 ");
КонецПроцедуры
Проблема в том, что размер зарплаты, который указывается в этом поле округляется вниз до ближайшего целого, но отображается с сотыми значениями, например ЧТС - 20,60, а отображается - 20,00.
При этом, в документах, которые заполняются на основании занесенных данных о сотруднике все отображается правильно.
Отвечает: Катунин Роман Владимирович
Здравствуйте, Сазонов Алексей!
Здравствуйте, Сазонов Алексей!
У вас Должность.Оклад тип число точность 2? тут все нормально
А вот Должность.ЧТС.Наименование строка. И здесь я бы сделал так
Опл = Число(Должность.ЧТС.Наименование);
но не факт что поможет.
Лучший вариант завести реквизит Должность.ЧТС.Сумма тип число точность 2 и использовать его. А наименование оставлять пустым и не показывать. Это лучший вариант так как со строкой виличиной и дальше будут проблемы.
Отвечает: DERL.KG
Здравствуйте, Сазонов Алексей!
Это потому что вы в формате забыли указать символ разделения дробной части
Формат((Опл),"Ч10.2, ")
Ответ отправил: DERL.KG (статус: 4-ый класс)
Ответ отправлен: 13.07.2007, 15:12
Отвечает: svsrus
Здравствуйте, Сазонов Алексей!
Начнем по порядку:
1. Опл = Должность.ЧТС.Наименование;
В переменную Опл Вы вносите строковое значение. Поэтому когда Вы присваиваете полю Оплата(числовой тип) переменную Опл(строковый тип), происходит неявное преобразованием типов. В Вашем случае Тип Строка в Тип Число. И если невозможно преобразовать полностью строку в число, то будут преобразованы только возможные символы. Например "5sd" преобразуются в число 5, "5.12ыв" в число 5.12, а "5,12ыв" в число 5 !!! Т.е. как вы видите "5.12" и "5,12" не равны. Тут уже
все зависит от ваших системных настроек. Если в системе "." (точка) является разделителем разрядов, то строка преобразуется в число "5.12" = 5.12, и наоборот "5,12" = 5. Думаю вы все поняли. Смотрите свои системные настройки и поменяйте в справочнике "ЧТС" точку на запятую, или наоборот.
2. Разберем Оплата = Формат((Опл),"Ч10.2 ");
Формат(число,"форматная строка") возвращает строковое значение. В параметр же нужно передавать число. У вас получается следующих несколько неявных преобразований типов: 1) Опл в число 2) Формат() опять в число. Все это лишнее. У вас и так тип Оплата число 10,2, он сам будет показывать два знака после запятой, так что никаких Форматов() вам не надо вообще.
Правильно: Оплата = Опл;
3.Чтобы не происходило таких казусов, лучше всего ввести в справочник ЧТС дополнительное числовое поле (10,2) ТарифнаяСтавка, и тогда ваш код будет выглядеть так:
Процедура ЗП()
Перем Опл;
Если ПустоеЗначение(Должность.ЧТС.Наименование)=1 Тогда
Оплата = Должность.Оклад;
Иначе
Оплата = Должность.ЧТС.ТарифнаяСтавка;
КонецЕсли;
КонецПроцедуры
Надеюсь, помог:)
Удачи!
Ответ отправил: svsrus (статус: 7-ой класс)
Ответ отправлен: 13.07.2007, 16:24
Отвечает: Elric
Здравствуйте, Сазонов Алексей!
Прислушайтесь к мнению svsrus, заведите числовой реквизит и в нем указывайте ставку, иначе потом совсем запутаетесь. Тем более что ставку, возможно, придется сделать периодическим реквизитом, а с Наименованием это, разумеется, невозможно.
--------- Мирный атом в КАЖДЫЙ дом!
Ответ отправил: Elric (статус: Специалист)
Ответ отправлен: 14.07.2007, 18:07
Вопрос № 95.051
Здравствуйте!!!
Скажите, можно ли в 1с 7.7 програмно указать, что нужно печатать только нечетные или только четные страницы или хотя - бы просто номера страниц, которые нужно выводить на печать.
также, можно ли узнать количество страниц в сформированом документе.
Отправлен: 13.07.2007, 15:27
Вопрос задал: BigHard (статус: Студент)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Катунин Роман Владимирович
Здравствуйте, BigHard!
Номера страниц указываются в опциях печати. Програмных методов нет. Как вариант можно запрограмировать, чтобы в результирующей таблице выводились только тестраницы которые нужны. Получить количество страниц можно только подсчитав количество строк помещающихся на странице и разделив на общее количество результирующих строк. Количество результирующих строк можно получить методом ВысотаТаблицы
Определить текущую высоту результирующей таблицы можно методом ВысотаТаблицы().
Здравствуйте уважаемые эксперты! Пытаюсь использовать матричный принте для печати на бумажной ленте. У меня пока что результат такой: все печатается, то неполучается остановить принтер в месте отрыва, бумагу протягивает на формат А4. Уже пытался произвести всевозможные настройки, но положительного результата дак и не добился. Задача - печать формата А5 на ленте, принтер Epson LX-300.
Подскажите, пожалуйста, где и что надо настроить ?
Отвечает: Ovr1970
Здравствуйте, Заброцкий Андрей Игоревич!
У вас стоит формат бумаги А4. Просто в настройках печати поставьте формат бумаги А5 альбомная и все получится
Ответ отправил: Ovr1970 (статус: Практикант)
Ответ отправлен: 16.07.2007, 13:20
Вопрос № 95.120
Здравствуйте уважаемые эксперты. Есть проблема. В бухгалтерии 7.7 нет в разделе специализированных отчетов справки о доходах 2-НДФЛ. В чем дело даже местные партнеры 1С объяснить не могут. Ставили систему в апреле этого года. Программист от партнера 1С поставил сразу 487 релиз. Сейчас релиз конфигурации 489. Платформа 027. Никаких изменений в типовую конфигурации не вносилось. Версия ПРОФ. В чем собственно дело?
Что тут сказать... Видимо у вас "квалифицированные" местные партнеры. Что, кстати, встречается сплошь и рядом, особенно в провинции:( Ну да ладно...
С 486 релиза(если не ошибаюсь) справка 2-НДФЛ вынесена в отчет "Подготовка сведений в ИМНС". Теперь из меню Специализированных отчетов к ней доступ не получите. Чтобы сформировать справки 2-НДФЛ нужно зайти в справочник Сотрудники, и нажать на кнопку "Налоги на доходы" и выбрать Справки 2-НДФЛ. Только учтите, что перед формированием справки 2-НФДЛ по сотруднику, надо сначала заполнить справку 1-НФДЛ (Специализированные отчеты).
PS: Если вдруг у вас нет такой кнопки в справочнике Сотрудники, значит, возможно, при обновлении бухгалтерии после 485 релиза, справочник Сотрудники не обновлялся. Это конечно мало вероятно, но учитывая компетентность ваших "специалистов" возможно.
УДАЧИ!
Ответ отправил: svsrus (статус: 7-ой класс)
Ответ отправлен: 14.07.2007, 11:59 Оценка за ответ: 5 Комментарий оценки: Большое спасибо за подробный ответ! :)