The Golden Section labs Welcome to TGSlabs.com!
НачалоЗагрузитьКупитьПоддержкаОбратная связь
WinOrganizer
GSNotes
GSDataServer
GS Reader
PicaSafe
Новости
Сравнение продуктов
FAQ
Бесплатная регистрация
Ссылка на нас
Бесплатные базы данных
Для прессы
Полезные ссылки
info@tgslabs.com
Подписка на рассылку

Разделы:
Новости компании
Новости программ
Новые базы данных
E-mail:
Дизайн иконок и дизайн логотипов Иконки программ нарисованы
LuckyIcon Art
ПрограммыБазы данных (RUS)Базы данных (ENG)Базы данных (Другие)
English | Russian

Расположенная здесь бесплатная база данных была составлена с помощью персонального органайзера WinOrganizer.
Для просмотра базы данных можно воспользоваться программой GoldenSection Reader, которую можно загрузить с нашего сайта.

Название Автор Размер Дата Загрузить
Примеры программ на языке 1С Предприятие Дмитрий Шкедов 42 Кб 29.09.2004
Загрузить

Расположенные на нашем сайте файлы и архивы проверены с помощью антивирусной программы Kaspersky Antivirus
Для ускорения загрузки файлов Вы можете воспользоваться менеджером загрузки ReGet

От составителя:

База "Примеры программ на языке 1С Предприятие" файл code1c.gso содержит примеры программ для работы с 1с Предприятием. Это примеры для работы с внешними компонентами(1C++, vtools), различные универсальные функции(работа с ТЗ,СЗ, и др), приемы программирования на языке 1с.
--
29.09.2004, Дмитрий Шкедов

Внешний вид
Примеры программ на языке 1С Предприятие
Содержание базы (возможны сокращения)

 Примеры программ на языке 1С Предприятие
      1С Предприятие v77
  Внешние обработки
  1С++ внешняя компонента OXY software
    Журнал проводок ДДС
  vtools
    моеДерево
    ПоказДерева
    ПоказТаблицы
  Универсальные функции
  Работа с таблицей значений
  Сторнирование движений регистров
  Копирование реквизитов из одного документа в другой
  ЗаписьИПроведениеНаСервере
  Получить список Кодов и Символов
  ПолучитьНовыйИДД
  глТехнологическоеПерепроведение
  Даты
  Приемы программирования
  Граница последовательности
  XML
  Математические
  СлоииЗакладки
  ADODB
  Word
  ДеньгиПрописью
    Число прописью
    еще
  Недокументированные функции шаблона
  Внутренние идентификаторы объектов
  Работа с таблицей
  Список значений
  Среда исполнения
  Выпадающие меню
  Актуальный остаток
  Выгрузить регистр в ТЗ
  Примеры запросов по регистру
    Простой 1 полный
    Простой 2
    Простой 3
    Выгрузка регистра
    запрос с вызовом функции
  пример запроса по документу
  Справочная
  Ключи запуска
  Архивация
  Прикол


Работа с таблицей значений
это универсальные функции для удаления строк из таблицы значений
функции работают

// Шкедов Д.Ю.   -   Начало блока.
Процедура ГЛмояУдалитьКонкретныеЗначенияИзТЗ(тз,яКолонка,яУдаляемоеЗначение,Условие=0) Экспорт 

//универсальная процедура удаления значений из ТаблицыЗначений
//удаляет из таблицы значений "тз" из колонки "яКолонка" все значения "яУдаляемоеЗначение"
        //если указано условие тогда можно удалить диапазон чисел
        //условие можно указать так: "<=" ">=" ">" "<" "<>"
        //например:  яУдаляемоеЗначение=5 Условие= "<=" Тогда из тз будут удалены все значения которые меньше или равны 5

        Если Условие=0 Тогда
                Если ТипЗначенияСтр(яУдаляемоеЗначение)="Строка" Тогда
                        Для Индекс=1 По тз.КоличествоСтрок() Цикл
                                Если Индекс>тз.КоличествоСтрок() Тогда                         
                                        Прервать;
                                КонецЕсли; 
                                Если СокрЛП(тз.ПолучитьЗначение(Индекс,яКолонка))=СокрЛП(яУдаляемоеЗначение) Тогда
                                        тз.УдалитьСтроку(Индекс);
                                        Индекс=Индекс-1;
                                КонецЕсли; 
                        КонецЦикла;         
                Иначе        
                        Для Индекс=1 По тз.КоличествоСтрок() Цикл
                                Если Индекс>тз.КоличествоСтрок() Тогда
                                        Прервать;
                                КонецЕсли; 
                                Если тз.ПолучитьЗначение(Индекс,яКолонка)=яУдаляемоеЗначение Тогда
                                        тз.УдалитьСтроку(Индекс);
                                        Индекс=Индекс-1;
                                КонецЕсли; 
                        КонецЦикла;  
                КонецЕсли;   
        Иначе
                Для Индекс=1 По тз.КоличествоСтрок() Цикл
                        Если Индекс>тз.КоличествоСтрок() Тогда                         
                                Прервать;
                        КонецЕсли;  
                        Стр=Шаблон("[?(тз.ПолучитьЗначение(Индекс,яКолонка)"+Условие+"яУдаляемоеЗначение,1,0)]");
                        Если Стр="1" Тогда
                                тз.УдалитьСтроку(Индекс);
                                Индекс=Индекс-1;
                        КонецЕсли; 
                КонецЦикла;                         
        КонецЕсли;   
КонецПроцедуры 
// Шкедов Д.Ю.     -     Конец блока.
//* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *


// Шкедов Д.Ю.   -   Начало блока.
Процедура мояУдалитьИзТЗ_1ВсеЗначенияТЗ_2(тз1,Колонка1,тз2,Колонка2)
        //удаляет из таблицы значений тз1 все значения которые находятся в тз2  
        Если ТипЗначенияСтр(тз1.ПолучитьЗначение(1,Колонка1))="Строка" Тогда
                Для индекс1=1 По тз1.КоличествоСтрок() Цикл      
                        Для индекс2=1 По тз2.КоличествоСтрок() Цикл  
                                Если (Индекс1>тз1.КоличествоСтрок()) или (Индекс1<1) Тогда
                                        Прервать;
                                КонецЕсли; 
                                Если СокрЛП(тз1.ПолучитьЗначение(индекс1,Колонка1))=СокрЛП(тз2.ПолучитьЗначение(индекс2,Колонка2)) Тогда
                                        тз1.УдалитьСтроку(индекс1);  
                                        индекс1=индекс1-1;
                                КонецЕсли;
                        КонецЦикла;
                КонецЦикла;   
                Сообщить ("строка");
        Иначе //для остальных типов
                Для индекс1=1 По тз1.КоличествоСтрок() Цикл      
                        Для индекс2=1 По тз2.КоличествоСтрок() Цикл  
                                Если (Индекс1>тз1.КоличествоСтрок()) или (Индекс1<1) Тогда
                                        Прервать;
                                КонецЕсли; 
                                Если тз1.ПолучитьЗначение(индекс1,Колонка1)=тз2.ПолучитьЗначение(индекс2,Колонка2) Тогда
                                        тз1.УдалитьСтроку(индекс1);  
                                        индекс1=индекс1-1;
                                КонецЕсли;
                        КонецЦикла;
                КонецЦикла;
        КонецЕсли;
КонецПроцедуры   
// Шкедов Д.Ю.     -     Конец блока.


//* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
// Шкедов Д.Ю.   -   Начало блока.
Процедура мояУдалитьИзТЗ_1ВсеЗначенияКромеТехКоторыеВТЗ_2(тз1,Колонка1,тз2,Колонка2)
        // удалим из ТЗ1 все значения кроме тех которые в тз2           
        // 1шаг: тмечаем которые нам нужны
        тз1.НоваяКолонка("мойУникальныйНамНужен","Число",1);
        КС1=тз1.КоличествоСтрок();
        КС2=тз2.КоличествоСтрок(); 
        Если ТипЗначенияСтр(тз1.ПолучитьЗначение(1,Колонка1))="Строка" Тогда
                Для Индекс1=1 По КС1 Цикл
                        Для Индекс2=1 По КС2 Цикл
                                Если СокрЛП(тз1.ПолучитьЗначение(Индекс1,Колонка1))=СокрЛП(тз2.ПолучитьЗначение(Индекс2,Колонка2)) Тогда
                                        тз1.УстановитьЗначение(Индекс1,"мойУникальныйНамНужен",1);
                                        Прервать;
                                КонецЕсли; 
                        КонецЦикла;
                КонецЦикла;                   
        Иначе
                Для Индекс1=1 По КС1 Цикл
                        Для Индекс2=1 По КС2 Цикл
                                Если тз1.ПолучитьЗначение(Индекс1,Колонка1)=тз2.ПолучитьЗначение(Индекс2,Колонка2) Тогда
                                        тз1.УстановитьЗначение(Индекс1,"мойУникальныйНамНужен",1);
                                        Прервать;
                                КонецЕсли; 
                        КонецЦикла;
                КонецЦикла;                                  
        КонецЕсли;
        // 2 шаг: удаляем которые не нужны
        ГЛмояУдалитьКонкретныеЗначенияИзТЗ(тз1,"мойУникальныйНамНужен",0);
    тз1.УдалитьКолонку("мойУникальныйНамНужен");
КонецПроцедуры
// Шкедов Д.Ю.     -     Конец блока.


Внимание:
Все бесплатные базы данных, расположенные на нашем сайте, составлены нашими пользователями. Мы не несем ответственности за их содержимое. Если представленная база данных каким-либо образом нарушает Ваши авторские или иные права, пожалуйста, свяжитесь с нами.

Начало | Загрузить | Купить | Поддержка | Обратная связь |