Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
15 дек 2024, 16:26

Проблема с запросом к MSSQL базы 1с-ки

Автор Art-SiteDesign, 14 июн 2013, 02:41

0 Пользователей и 1 гость просматривают эту тему.

Art-SiteDesign

Добрый день уважаемые форумчане!
С недавнего времени столкнулся с такой проблемой:
Необходимо прямым запросом к MSSQL базе 1с (комплексная 7.7) получить информацию о дебиторской задолженности по каждому контрагенту.
Если быть точнее, необходимо после того как будет выбран контрагент,
зная его id можно было вывести табличку: дата реализации, сумма реализации, сумма задолженности и сумма оплаты (все это в зависимости от текущей даты)
На данный момент мне известны следующие данные:
1) Необходимо искать дебитовое сальдо по 62 счету...
2) Есть в MSSQL такие прекрасные таблицы, по которым и надо как-то формировать запрос:

#==TABLE no 560    : Отбор проводок по субконто
# Name    |Descr                         |SQLTableNam|RecordLock
T=1SSBSEL |Отбор проводок по субконто    |_1SSBSEL   |         
#-----Fields-------
# Name                  |Descr               |Type|Length|Precision
F=ROW_ID                |Row ID              |I   |0     |0       
F=SBKINDID              |Sb Kind ID of select|I   |0     |0       
F=VAL                   |Value               |C   |9     |0       
F=DOCID                 |Doc ID              |C   |9     |0       
F=DATE_TIME_DOCID       |Date                |C   |23    |0       
F=NUMBER                |Prov number         |I   |0     |0       
F=CORNO                 |Correspond number   |I   |0     |0 

#==TABLE no 552    : Счета
# Name    |Descr                         |SQLTableNam|RecordLock
T=1SACCS  |Счета                         |_1SACCS    |R         
#-----Fields-------
# Name                  |Descr               |Type|Length|Precision
F=ROW_ID                |Row ID              |I   |0     |0       
F=ID                    |Account Id          |C   |9     |0       
F=PLANID                |Plan Id             |I   |0     |0       
F=SCHKOD                |Account code(number)|C   |8     |0       
F=SCHIM                 |Account description |C   |25    |0       
F=SCHV                  |Flag Currency enable|L   |0     |0       
F=SCHKOL                |Flag Amount enable  |L   |0     |0       
F=SCHSINGLE             |Flag no need corresp|L   |0     |0       
F=ISFOLDER              |Flag Have child acco|L   |0     |0       
F=ISMARK                |Flag Object is Marke|L   |0     |0       
F=LEVEL_                |Level of Account    |S   |0     |0       
F=MDID                  |Metadata Id         |I   |0     |0       
F=ACTIVE                |Flag Active         |Y   |0     |0       
F=VERSTAMP              |Version stamp       |I   |0     |0       
F=SC0                   |                    |I   |0     |0       
F=OSC0                  |                    |Y   |0     |0       
F=FSC0                  |                    |Y   |0     |0       
F=SC1                   |                    |I   |0     |0       
F=OSC1                  |                    |Y   |0     |0       
F=FSC1                  |                    |Y   |0     |0       
F=SC2                   |                    |I   |0     |0       
F=OSC2                  |                    |Y   |0     |0       
F=FSC2                  |                    |Y   |0     |0       
F=SP7737                |(P)ПолнНаименование |M   |0     |0 

#==TABLE no 554    : Проводки
# Name    |Descr                         |SQLTableNam|RecordLock
T=1SENTRY |Проводки                      |_1SENTRY   |         
#-----Fields-------
# Name                  |Descr               |Type|Length|Precision
F=ROW_ID                |Row ID              |I   |0     |0       
F=DOCID                 |Document Id         |C   |9     |0       
F=NUMBER                |Prov number         |I   |0     |0       
F=CORNO                 |Correspond number   |I   |0     |0       
F=DATE_TIME_DOCID       |date+time+docid     |C   |23    |0       
F=ACCDTID               |AccountDt Id        |C   |9     |0       
F=ACCKTID               |AccountKt Id        |C   |9     |0       
F=SUM_                  |Prov sum            |N   |14    |2       
F=CURRID                |Currency Id         |C   |9     |0       
F=CURSUM                |Prov currency sum   |N   |14    |2       
F=AMOUNT                |Prov amount         |N   |14    |3       
F=PROVKIND              |                    |C   |1     |0       
F=ACTIVE                |                    |C   |1     |0       
F=DTFLAGS               |                    |Y   |0     |0       
F=KTFLAGS               |                    |Y   |0     |0       
F=DOCLINENO             |Doc line number     |I   |0     |0       
F=SP7734                |(P)СодержаниеПроводк|C   |50    |0       
F=SP7735                |(P)НомерЖурнала     |C   |2     |0       
F=SP7736                |(P)РазделительУчета |C   |9     |0       
F=SP27758               |(P)ПервичныйДокумент|C   |25    |0       
F=DTSC0                 |                    |C   |9     |0       
F=VDTSC0                |                    |I   |0     |0       
F=ODTSC0                |                    |Y   |0     |0       
F=DTSC1                 |                    |C   |9     |0       
F=VDTSC1                |                    |I   |0     |0       
F=ODTSC1                |                    |Y   |0     |0       
F=DTSC2                 |                    |C   |9     |0       
F=VDTSC2                |                    |I   |0     |0       
F=ODTSC2                |                    |Y   |0     |0       
F=KTSC0                 |                    |C   |9     |0       
F=VKTSC0                |                    |I   |0     |0       
F=OKTSC0                |                    |Y   |0     |0       
F=KTSC1                 |                    |C   |9     |0       
F=VKTSC1                |                    |I   |0     |0       
F=OKTSC1                |                    |Y   |0     |0       
F=KTSC2                 |                    |C   |9     |0       
F=VKTSC2                |                    |I   |0     |0       
F=OKTSC2                |                    |Y   |0     |0       

Если кто может, помогите пожалуйста разобраться что и как....
Если можно то пример запроса с выводом долга по реализациям для определенного контрагента.
Дело в том, что в 1с я плохо разбираюсь и такие понятия как счет, сальдо и.т.д. ля меня темный лес =(
Заранее спасибо!!!

has

Почему именно из SQL? Используйте 1С++

Herby

с запросами к регистрам, к документам я бы вам помог, а вот к оборотам бухгалтерских итогов ни разу не доводилось писать прямые. что-то мне подсказывает там будет очень все не просто. Проще вам в 1С разобраться.

а почему именно прямые запросы? только из-за того что вы в 1С не разбираетесь?
а как потом другим программистам, которые будут вместо вас дорабатывать? не все же в SQL разбираются.

Art-SiteDesign

Господа, мне удалось найти обработку для 1С, которая формирует дебеторку именно в том виде, как мне нужно.....
Но вот проблема в том, что я не могу расшифровать код 1с и составить правильный SQL запрос, который уже напрямую из базы будет тянуть эти цифры....Если кто может мне помочь, буду крайне признателен!!!!!)))


Перем Реализ;
Перем КакойСпр;
Функция ВзятьКонтекст(Конт)
Возврат Конт;
КонецФункции // глВзятьКонтекст()

Функция ПолучитьНазваниеБезТочки(иф)

Если Найти(иф, ".") <> 0 Тогда
// найден разделитель
Возврат Лев(иф, Найти(иф, ".") - 1);

Иначе
Возврат СокрЛП(иф);

КонецЕсли;

КонецФункции // ПолучитьИНН()


Процедура ЗафиксироватьЗапускОтчета()

Путь     = "";
ИмяФайла = "";
ФайлОтчета = РасположениеФайла(Путь,ИмяФайла);
ИмяФайла= ПолучитьНазваниеБезТочки(ИмяФайла);
Часов = 0; Минут = 0; Секунд = 0;
ТекущееВремя(Часов,Минут,Секунд);
ИмяФайлаВыгрузки = КаталогИБ() + "ExtForms\"+"Отчеты\"+глПользователь+"("+ИмяФайла+"("+часов+"-"+минут+"-"+секунд+".txt";
Текст = СоздатьОбъект("Текст");
Текст.Очистить();
Текст.Записать(ИмяФайлаВыгрузки);


КонецПроцедуры



Процедура НайтиНезакрытвеРеализации()
ТаблВозвратов=СоздатьОбъект("ТаблицаЗначений");
ДатаНачала0 = '01.01.2008';
// ДатаОконч = ТекущаяДата();
ДатаОконч = ДатаНачала;

ТекстЗапроса = "
|Период С ДатаОконч По ДатаОконч;
|ДокРеал = Регистр.ДолгПоДокументу.ДокРеализация;
|Контрик = Регистр.ДолгПоДокументу.Контрагент;
// |ДатаДока = Регистр.ДолгПоДокументу.Дата;
    |ДатаДока = Регистр.ДолгПоДокументу.ДокРеализация.ДатаДок;
    |НезакрытаяСумма = Регистр.ДолгПоДокументу.Сумма;
//|Группировка ДокРеал без групп; 
|Функция ОстатокПоДокументу = КонОст(НезакрытаяСумма);
|Группировка ДокРеал упорядочить по ДокРеал.ДатаДок без групп;
//|Группировка ДокументДвижения;
|Условие (Контрик в ВыбКлиент); 
//|Функция ДолгПоДокументу = приход(Доход);
|";



Зап=СоздатьОбъект("Запрос");
Если Зап.Выполнить(ТекстЗапроса) = 0 Тогда
Сообщить("Запрос не выполнен");
Возврат;
КонецЕсли;


Реализ = СоздатьОбъект("ТаблицаЗначений");
Реализ.УдалитьСтроки();

Зап.Выгрузить(Реализ,1,0);
Реализ.Сортировать("ДатаДока-");

КонецПроцедуры


Процедура  ЗаполнитьСписокКонтрагентов()
  Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать12)
|Обрабатывать НеПомеченныеНаУдаление;
|Контрагент = Справочник.Адреса.ТекущийЭлемент.Владелец;
|Адрес = Справочник.Адреса.ТекущийЭлемент;
|Территория = Справочник.Адреса.ТорговыйПредставитель;
|Отдел = Справочник.Адреса.ТорговыйПредставитель.Отдел;
    |Группировка Контрагент без групп;
|Условие (Территория в ВыбТорг);
|Условие (Отдел в ВыбОтдел);
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;

   // Запрос.Выгрузить(ВыбКлиент);
     Пока Запрос.Группировка(1)=1 Цикл
ВыбКлиент.ДобавитьЗначение(Запрос.Контрагент,);

КонецЦикла;

КонецПроцедуры


Функция НалБезнал(Док)

Возв = "бнал";

ДокПодч = СоздатьОбъект("Документ");
ДокПодч.ВыбратьПодчиненныеДокументы(,,Док.ТекущийДокумент());
Пока ДокПодч.ПолучитьДокумент() = 1 Цикл

Если ДокПодч.Вид() <> "Доверенность" Тогда
Продолжить
КонецЕсли;

Если ДокПодч.ПометкаУдаления() = 1 Тогда
Продолжить
КонецЕсли;

ДокПодч.ВыбратьСтроки();
Пока ДокПодч.ПолучитьСтроку() = 1 Цикл
Если НРег(СокрЛП(ДокПодч.НаименованиеТМЦ)) = "наличные деньги" Тогда
ВОзврат "нал";
КонецЕсли;
КонецЦикла;
КонецЦикла;

Возврат Возв;
КонецФункции


//*******************************************************************************
Процедура Сформировать()     

// ЗафиксироватьЗапускОтчета();


    Если ВыбКлиент.РазмерСписка() = 0 Тогда

ВыбКлиент.УдалитьВсе();
ЗаполнитьСписокКонтрагентов();

КонецЕсли;



Т = СоздатьОбъект("Таблица");
БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
// Реализ = СоздатьОбъект("Документ.Реализация");
Докум = СоздатьОбъект("Документ");

ДатаНачала0 = '01.01.2006';

НайтиНезакрытвеРеализации();

Если ПустоеЗначение(ВыбКлиент)=1 Тогда
БухИт.ИспользоватьСубконто(ВидыСубконто.Контрагенты,,1,1);
Иначе                                                   
БухИт.ИспользоватьСубконто(ВидыСубконто.Контрагенты,ВыбКлиент);
КонецЕсли;
БухИт.ВыполнитьЗапрос(ДатаНачала,ДатаНачала,"62","00,50,51,71,76,90,91",,1,"Операция",1);


ИтНак=0;
ИтОпл=0;
ИтДол=0;
ИтПро=0;
Ит2007=0;
ИтДлгПоОтчету=0;
ИтОплатаПоОтчету=0;


Т.ИсходнаяТаблица("Таблица");
Т.ВывестиСекцию("Отчет");
БухИт.ВыбратьСубконто(1);
Флаг = 0;

//Реализ.ВыбратьСтроку();
//Возврат;

НомерСтроки=4;

Пока БухИт.ПолучитьСубконто(1) =1 Цикл
Конт = БухИт.Субконто(1);
Глубина = Конт.ГлубинаКредита;
НаимКлиент=Конт.Наименование;
ТоргПр=Конт.Родитель;
КАМ=Конт.КАМ;

ОбщЗад=?(БухИт.СКД()<>0,БухИт.СКД(),0);

Аванс= БухИт.СКК();

Если Аванс>0 Тогда



ОбщЗад=- Аванс ;
ИтДол=ИтДол+ОбщЗад;


Если БезДок<>1 Тогда


// Т.ВывестиСекцию("Клиент");
// Т.Область("R"+НомерСтроки+"C10").ЦветФона(255);

НомерСтроки= НомерСтроки+1;

КонецЕсли;
Продолжить;
КонецЕсли;


Если ОбщЗад=0 Тогда
Продолжить;
КонецЕсли;
Флаг=1;
ИтОтгружено=0;
ИтОплачено=0;
ИтДолг=0;
ИтПроср=0;
Дол2007=0;
ТмпДолг=ОбщЗад;


Если БезДок<>1 Тогда


// Т.ВывестиСекцию("Клиент");
// Т.Область("R"+НомерСтроки+"C10").ЦветФона(255);
НомерСтроки= НомерСтроки+1;




КонецЕсли;
// ИтДлгПоОтчету= ИтДлгПоОтчету+ОбщЗад;

stДолг2007=0;



Реализ.ВыбратьСтроки();
Пока Реализ.ПолучитьСтроку()=1 Цикл

Если Реализ.Контрик<>Конт Тогда
Продолжить;
КонецЕсли;

Если ПустоеЗначение(Реализ.ДокРеал)=1  Тогда
Продолжить;
КонецЕсли;

Если Реализ.ДокРеал.Вид()="Реализация" Тогда   
ПечСум=Реализ.ДокРеал.Итог("Сумма")+?(Реализ.ДокРеал.СуммаВклНП=1,0,Реализ.ДокРеал.Итог("СуммаНП"))+?(Реализ.ДокРеал.СуммаВклНДС=1,0,Реализ.ДокРеал.Итог("СуммаНДС"));
Иначе
Если Реализ.ДокРеал.Вид()="ЗаказПоставщику"  Тогда
// Сообщить("Не правильно введен документ"+" "+Реализ.ДокРеал+" "+" "+"по покупателю"+" "+Реализ.ДокРеал.Контрагент+"  "+"Обратитесь к операторам на склад");
Продолжить;
            Иначе
ПечСум=Реализ.ДокРеал.Итог("СуммаРуб");
КонецЕсли;
КонецЕсли;

Реализац="Накладная № "+Реализ.ДокРеал.НомерДок+"  от "+СокрЛП(Реализ.ДокРеал.ДатаДок);
Адрес=Реализ.ДокРеал.Договор.Наименование;
ГлубинаДог = Реализ.ДокРеал.Договор.ГлубинаКредита;



ЧерБел = "1";
Если Лев(Реализ.ДокРеал.НомерДок,1) = "0" Тогда
ЧерБел = "0";
КонецЕсли;
НалБезнал = НалБезнал(Реализ.ДокРеал);


СумОпл=0;

СумОпл=ПечСум-Реализ.ОстатокПоДокументу;



Знамя = 0;
Если ПечСум-СумОпл>0 Тогда
Если ТмпДолг>=ПечСум-СумОпл Тогда
ТмпДолг=ТмпДолг - ПечСум + СумОпл;
Иначе
Если ТмпДолг = 0 Тогда
Прервать;
КонецЕсли;

СумОпл = ПечСум - ТмпДолг;//1
Знамя = 1;
КонецЕсли;
СуммаДолга=ПечСум-СумОпл;
ДниПроср=Число(ДатаНачала-Реализ.ДокРеал.ДатаДок)-ГлубинаДог;
СуммаПроср = ?(ДниПроср>0,СуммаДолга,0);


Если ВариантОтчета.ТекущаяСтрока() = 2 Тогда
Если (СуммаПроср > 0) И (ГлубинаДог <= 2) Тогда
Иначе
Продолжить
КонецЕсли;

ИначеЕсли ВариантОтчета.ТекущаяСтрока() = 3 Тогда

Если (ГлубинаДог >=2) И (ЧерБел = "0") Тогда
Иначе
Продолжить
КонецЕсли;
КонецЕсли;

ИтОтгружено=ИтОтгружено+ПечСум;
ИтОплачено=ИтОплачено+СумОпл;//1
ИтДолг=ИтДолг+СуммаДолга;
ИтПроср=ИтПроср+СуммаПроср;
ИтДлгПоОтчету=ИтДлгПоОтчету+СуммаДолга;


Если Реализ.ДокРеал.ДатаДок<'01.01.08' Тогда

stДолг2007=stДолг2007+СуммаПроср;

КонецЕсли;


Если БезДок<>1 Тогда


// Т.Область(НомерСтроки,10).ЦветФона(255);

Если Реализ.ДокРеал.Вид()="Реализация" Тогда   
ТекРеализац=Реализац;
ДниПроср=Число(ДатаНачала-Реализ.ДокРеал.ДатаДок)-ГлубинаДог;

Иначе
ТекРеализац=Реализ.ДокРеал.Комментарий;
ДатаПоДокВводОст= Дата(Лев(Прав(Реализ.ДокРеал.Комментарий,9),8));

ДниПроср=Число(ДатаНачала-ДатаПоДокВводОст)-ГлубинаДог;


КонецЕсли;

//
//Если Реализ.ДокРеал.Договор.ЗапретОтгрузки=1   Тогда
//
// Т.Область("R"+НомерСтроки+"C10").ЦветФона(255);
//
//КонецЕсли;

НомерСтроки= НомерСтроки+1;
Т.ВывестиСекцию("Документ");
КонецЕсли;

Если Знамя = 1 Тогда
Прервать;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если Флаг=1 Тогда
Флаг=0;

Дол2007=stДолг2007;
// Дол2007=ОбщЗад-ИтДолг;

Если БезДок<>1 Тогда

// Т.ВывестиСекцию("Итого");
НомерСтроки= НомерСтроки+1;

Иначе
// Т.ВывестиСекцию("Итого2"); 
НомерСтроки= НомерСтроки+1;

КонецЕсли;


ИтНак=ИтНак+ИтОтгружено;
ИтОпл=ИтОпл+ИтОплачено;
ИтДол=ИтДол+ИтДолг;
ИтПро=ИтПро+ИтПроср;
Ит2007=Ит2007+Дол2007;
КонецЕсли;

КонецЦикла; 

Т.ВывестиСекцию("Подвал");
Т.Опции(0,0,3,0,0);
Т.ПараметрыСтраницы(2);
Т.ТолькоПросмотр(1);
Т.ОбластьПечати(1);
Т.Показать("Дебиторская задолжннность",""); 
КонецПроцедуры  // Сформировать
//********************************************************************************

Процедура СформироватьПоЗаблок()

НовыйСписок=СоздатьОбъект("СписокЗначений");
Контрик=СоздатьОбъект("Справочник.Контрагенты");
Дог=СоздатьОбъект("Справочник.Договоры");
Для Сч = 1 По ВыбКлиент.РазмерСписка() Цикл
Контр = ВыбКлиент.ПолучитьЗначение(Сч);
Если Контр.ЭтоГруппа() = 1 Тогда

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

Дог.ИспользоватьВладельца(Контрик);
Дог.ВыбратьЭлементы();
Пока Дог.ПолучитьЭлемент()=1 Цикл
Если Дог.ЗапретОтгрузки=1  Тогда
НовыйСписок.ДобавитьЗначение(Контрик.ТекущийЭлемент());
Продолжить;
КонецЕсли;
КонецЦикла;



КонецЕсли;
КонецЦикла;

Если НовыйСписок.РазмерСписка()>0 Тогда
ВыбКлиент.УдалитьВсе();
НовыйСписок.Выгрузить(ВыбКлиент,,);


КонецЕсли;

Если ВыбКлиент.РазмерСписка()>0 Тогда

Сформировать();

Иначе
Сообщить("Необходимо выбрать контрагента или группу контрагентов");
КонецЕсли;




КонецПроцедуры

Процедура ПодборТоргового()
Парам = ВзятьКонтекст(Контекст);
ОткрытьПодбор("Справочник.ТорговыеПредставители", "ДляВыбора", Парам, 1);
КакойСпр="ТорговыеПредставители";
КонецПроцедуры       
//******************************************************************************
Процедура ПодборОтдела()
Парам = ВзятьКонтекст(Контекст);
ОткрытьПодбор("Справочник.Отделы", "ДляВыбора", Парам, 1);
КакойСпр="Отделы";
КонецПроцедуры

Процедура ОбработкаПодбора(Элем, Конт)

Если КакойСпр="ТорговыеПредставители" Тогда
ВыбТорг.ДобавитьЗначение(Элем);

ИначеЕсли КакойСпр="Отделы" Тогда
ВыбОтдел.ДобавитьЗначение(Элем);

ИначеЕсли КакойСпр="Контрагенты" Тогда
ВыбКлиент.ДобавитьЗначение(Элем);
ВыбКлиент.ТекущаяСтрока(ВыбКлиент.РазмерСписка());
//ИначеЕсли КакойСпр="Номенклатура" Тогда
// ВыбТовар.ДобавитьЗначение(Элем);
//

КонецЕсли;

КонецПроцедуры


Процедура ПриОткрытии()
ДатаНачала = ТекущаяДата();
ДатаКонца = ТекущаяДата();
КонецПроцедуры


Процедура УдалитьИзСпискаКлиент()
Если ВыбТорг.ТекущаяСтрока()=0
Тогда Предупреждение ("Не выделен ни один элемент списка Клиентов!");
Иначе ВыбТорг.УдалитьЗначение(ВыбТорг.ТекущаяСтрока());
КонецЕсли;
КонецПроцедуры 

Процедура УдалитьИзСпискаКлиент1()
Если ВыбОтдел.ТекущаяСтрока()=0
Тогда Предупреждение ("Не выделен ни один элемент списка Клиентов!");
Иначе ВыбОтдел.УдалитьЗначение(ВыбОтдел.ТекущаяСтрока());
КонецЕсли;
КонецПроцедуры


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

//Парам = ВзятьКонтекст(Контекст);
//ОткрытьПодбор("Справочник.Контрагенты","ДляВыбора", Парам, 1);
//КакойСпр="Контрагенты";
КонецПроцедуры
////********************************************************************************
//Процедура ОбработкаПодбора(Значен,КонтФормы)
// ВыбКлиент.ДобавитьЗначение(Значен);
// ВыбКлиент.ТекущаяСтрока(ВыбКлиент.РазмерСписка());
//КонецПроцедуры
////********************************************************************************
Процедура УдалитьИзСпискаКлиент2()
Если ВыбКлиент.ТекущаяСтрока()=0
Тогда Предупреждение ("Не выделен ни один элемент списка Клиентов!");
Иначе ВыбКлиент.УдалитьЗначение(ВыбКлиент.ТекущаяСтрока());
КонецЕсли;
КонецПроцедуры
////********************************************************************************
Процедура ОчиститьСписокКлиент()
ВыбКлиент.УдалитьВсе();
КонецПроцедуры 

//*******************************************
// Процедура генерации запроса Сформировать12.
//

ВариантОтчета.ДобавитьЗначение("Стандарт");
ВариантОтчета.ДобавитьЗначение("глубина кредита<=2 кд, сумма просрочки>0");
ВариантОтчета.ДобавитьЗначение("чб = ч, глубина кредита>=2");
ВариантОтчета.ТекущаяСтрока(1);

Теги: 1c v 7.7 mssql SQL 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск