7.7 Помогите чайнику

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем kaktuskiller, 17 июл 2006.

  1. TopicStarter Overlay
    kaktuskiller
    Offline

    kaktuskiller

    Регистрация:
    17 июл 2006
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Итак имеется конфигурация Торговля и Склад ред. 9.2, 936.
    Есть необходимость при продаже(техника) указывать штрих-код, как можно это реализовать? В принципе устроит даже просто текстовое поле(столбец) куда будут вбиваться коды, не обязательно документ новый(хотя это было бы идеально), в документе транспортная накладная и/или товарный чек.
    И еще небольшой вопросик, как в этих же документах, где указывается сумма прописью в рублях и копейках, поменять на доллары и центы. Рубли из валют удалил, и по умолчанию везде стоит доллар.
  2. Tiger
    Offline

    Tiger Опытный в 1С

    Регистрация:
    12 июл 2006
    Сообщения:
    489
    Симпатии:
    0
    Баллы:
    26
    В каталоге базы должен быть файлик USD.spl Посмотреть вложение 15
    А в справочнике валют у данной валюты (Доллара) нужно указать файл прописи - вот этот файл USD.spl

    Вложения:

    • USD.spl.rar
      Размер файла:
      487 байт
      Просмотров:
      581
  3. TopicStarter Overlay
    kaktuskiller
    Offline

    kaktuskiller

    Регистрация:
    17 июл 2006
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Все нашел, сделал, но на печатных формах товарного чека и накладной все равно сумма прописью пишется в рублях и копейках, ее определяет насколько я понял функция:глСуммаПрописью(ИтогПечСумма, глРубли), где валюта-глРубли.
    Рубль из валют я удалил вообще.

    Вот нашел в глобальном модуле такой момент
    // Описание:
    // Формирует сумму прописью в соответствии с файлом прописи, заданным в валюте
    //
    Функция глСуммаПрописью(Сумма, Валюта) Экспорт

    Если Валюта <> глРубли Тогда

    Если ФС.СуществуетФайл(КаталогИБ() + Валюта.ИмяФайлаПрописи) = 1 Тогда
    Пропись(Валюта.ИмяФайлаПрописи);
    Иначе
    Сообщить("Для валюты " + Валюта + " отсутствует файл прописей." +
    РазделительСтрок +
    "Сумма прописью сформирована в национальной валюте.");
    КонецЕсли;

    КонецЕсли;

    СтрокаСуммы = Формат(Сумма, "ЧПДС");

    // установим пропись по умолчанию
    Пропись("");
    Возврат СтрокаСуммы;

    КонецФункции // глСуммаПрописью()
  4. Tiger
    Offline

    Tiger Опытный в 1С

    Регистрация:
    12 июл 2006
    Сообщения:
    489
    Симпатии:
    0
    Баллы:
    26
    Вы всё правильно поняли. Осталась самая малость глРубли поменять на Валюта или на глДоллары
    глСуммаПрописью(ИтогПечСумма, глДоллары)
    Дело в том что по закону у нас в стране расчеты ведутся только в рублях. Поэтому товарный чек и накладная в типовой конфигурации строго рублевые.
  5. bramat
    Offline

    bramat

    Регистрация:
    7 авг 2006
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Помогите плиз и еще одному молодому программисту :)
    Раз уж тема зашла о товарных чеках, такая вот проблемка:

    Есть такая процедурка

    Процедура Сформировать()
    Перем Запрос, ТекстЗапроса, Таб;

    ТабОтчета=СоздатьОбъект("ТаблицаЗначений");
    ТабОтчета.НоваяКолонка("Продавец","Справочник.Продавцы");
    ТабОтчета.НоваяКолонка("Сумма","Число",15,2);
    ТабОтчета.НоваяКолонка("Скидка","Число",15,2);
    ТабОтчета.НоваяКолонка("Всего","Число",15,2);
    ТабОтчета.НоваяКолонка("Покупки","Число",6,0);
    ТабОтчета.НоваяКолонка("Строка","Число",6,0);

    ТовЧек=СоздатьОбъект("Документ.ОтчетРеализатора");
    ТовЧек.ВыбратьДокументы(ВыбНачПериода,ВыбКонПериода);
    Пока ТовЧек.ПолучитьДокумент()=1 Цикл
    Если ТовЧек.ТекущийДокумент().Проведен()=1 Тогда
    ТовЧек.ВыбратьСтроки();
    Пока ТовЧек.ПолучитьСтроку()=1 Цикл
    Если (ТовЧек.Товар.СкидкаНаТоварПроцентом < 99.9999) // небесплатный товар
    и (ТовЧек.Количество > 0 ) // возвраты не учитываем
    Тогда
    ТабОтчета.НоваяСтрока();
    ТабОтчета.Продавец = ТовЧек.Продавец;
    ТабОтчета.Сумма=ТовЧек.Сумма;
    ТабОтчета.Скидка=ТовЧек.Скидка;
    ТабОтчета.Всего=ТовЧек.Всего;
    ТабОтчета.Строка=1;
    КонецЕсли;
    КонецЦикла;
    ТабОтчета.Покупки=1;
    КонецЕсли;
    КонецЦикла;
    ТабОтчета.Свернуть("Продавец","Сумма,Скидка,Всего,Покупки,Строка");

    // Подготовка к заполнению выходных форм данными запроса
    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Сформировать");
    // Заполнение полей "Заголовок"
    Таб.ВывестиСекцию("Заголовок");
    Состояние("Заполнение выходной таблицы...");
    Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
    НомСтр=1;
    ТабОтчета.ВыбратьСтроки();
    Пока ТабОтчета.ПолучитьСтроку() = 1 Цикл
    Таб.ВывестиСекцию("Строка");
    НомСтр=НомСтр+1;
    КонецЦикла;

    // Заполнение полей "Итого"
    Таб.ВывестиСекцию("Итого");
    // Вывод заполненной формы
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Сформировать", "");
    КонецПроцедуры

    считающая по продавцам кол - во тов чеков и строчек в них.
    Подскажите плиз, как ее модифицировать, что бы выводила в отчет количество товарных чеков с количеством строк в них > 5. А то чет я сам ни как не дойду.
    Т.е. 2 колонки - в одной общее количество тов. чеков по продавцам, а в другой кол-во тов чеков с кол-м стров > 5.

    Заранее СПАСИБО!!!!
  6. Tiger
    Offline

    Tiger Опытный в 1С

    Регистрация:
    12 июл 2006
    Сообщения:
    489
    Симпатии:
    0
    Баллы:
    26
    Процедура Сформировать()
    Перем Запрос, ТекстЗапроса, Таб;

    ТабОтчета=СоздатьОбъект("ТаблицаЗначений");
    ТабОтчета.НоваяКолонка("Продавец","Справочник.Продавцы");
    ТабОтчета.НоваяКолонка("Сумма","Число",15,2);
    ТабОтчета.НоваяКолонка("Скидка","Число",15,2);
    ТабОтчета.НоваяКолонка("Всего","Число",15,2);
    ТабОтчета.НоваяКолонка("Покупки","Число",6,0);
    ТабОтчета.НоваяКолонка("Строка","Число",6,0);
    ТабОтчета.НоваяКолонка("СтрокБольшеПяти","Число",6,0);
    ТовЧек=СоздатьОбъект("Документ.ОтчетРеализатора");
    ТовЧек.ВыбратьДокументы(ВыбНачПериода,ВыбКонПериода);
    Пока ТовЧек.ПолучитьДокумент()=1 Цикл
    Если ТовЧек.ТекущийДокумент().Проведен()=1 Тогда
    КолПолезныхСтрокВДокументе=0;
    ТовЧек.ВыбратьСтроки();
    Пока ТовЧек.ПолучитьСтроку()=1 Цикл
    Если (ТовЧек.Товар.СкидкаНаТоварПроцентом < 99.9999) // небесплатный товар
    и (ТовЧек.Количество > 0 ) // возвраты не учитываем
    Тогда
    ТабОтчета.НоваяСтрока();
    ТабОтчета.Продавец = ТовЧек.Продавец;
    ТабОтчета.Сумма=ТовЧек.Сумма;
    ТабОтчета.Скидка=ТовЧек.Скидка;
    ТабОтчета.Всего=ТовЧек.Всего;
    ТабОтчета.Строка=1;
    КолПолезныхСтрокВДокументе=КолПолезныхСтрокВДокументе+1;
    КонецЕсли;
    КонецЦикла;
    ТабОтчета.Покупки=1;
    Если КолПолезныхСтрокВДокументе>5 Тогда
    ТабОтчета.СтрокБольшеПяти=1;
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;
    ТабОтчета.Свернуть("Продавец","Сумма,Скидка,Всего,Покупки,Строка,СтрокБольшеПяти");

    // Подготовка к заполнению выходных форм данными запроса
    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Сформировать");
    // Заполнение полей "Заголовок"
    Таб.ВывестиСекцию("Заголовок");
    Состояние("Заполнение выходной таблицы...");
    Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
    НомСтр=1;
    ТабОтчета.ВыбратьСтроки();
    Пока ТабОтчета.ПолучитьСтроку() = 1 Цикл
    Таб.ВывестиСекцию("Строка");
    НомСтр=НомСтр+1;
    КонецЦикла;

    // Заполнение полей "Итого"
    Таб.ВывестиСекцию("Итого");
    // Вывод заполненной формы
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Сформировать", "");
    КонецПроцедуры

    Во вторую колонку отчета выводим переменную ТабОтчета.СтрокБольшеПяти
  7. bramat
    Offline

    bramat

    Регистрация:
    7 авг 2006
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    спасибо огромное!!!! а то я уже голову ломать устал!!!! :))))))))))
  8. Tiger
    Offline

    Tiger Опытный в 1С

    Регистрация:
    12 июл 2006
    Сообщения:
    489
    Симпатии:
    0
    Баллы:
    26
    Пожалуйста. Только в следующий раз для своего вопроса создавайте новую тему.

Поделиться этой страницей