ХарківТурист тепер у Телеграмі, долучайся!

| купить велосипед с бесплатной доставкой |

Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8 ... 14, Bce  След.
Автор Сообщение
СообщениеДобавлено: 13.11.2014 22:42 
Аватара пользователя

Сообщения: 1653
Изображения: 36
Город: Сіверськ, Україна
Пол: Муж
Возраст: 71
Зарегистрирован:27.11.2013
Бегущая Черепаха писал(а):
на сьогодні "крокоділоводство" закрите, всі бавляться піпєтками ! :smile:

Це дуже цікава та корисна тема!
Я подумав: топікстартер по суті робить те що й кольоровий прінтер. У нього є 5 кольорів (білий, блакитний, бордо, жовтий і чорний), він їх змішує і має любий бажаний колір.
Чорний тільки для чорного.
Перевести кольори прінтера кількість фарб і можна отримати той же результат.
Но шото муза покидает. Пограйтесь поки що новою Колірманією я подумаю.


Вложения:
Colormanija.zip [499.86 КБ]
Скачиваний: 138


_________________
Моя нанолабораторія.
Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 17.11.2014 01:31 
Аватара пользователя

Сообщения: 19192
Изображения: 13
Город: Киев
Пол: Муж
Возраст: 51
Зарегистрирован:07.10.2010
Игрушка увлекательная, но недопонял, как поймать ближайший цвет RAL :oops: Тупо подбором - перебором?
Освоил кое-как. Но как-то во встроеном каталоге РАЛ цвета ну совсем не похожи...

_________________
Крокодиловодство 2.0


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 17.11.2014 22:49 
Аватара пользователя

Сообщения: 1653
Изображения: 36
Город: Сіверськ, Україна
Пол: Муж
Возраст: 71
Зарегистрирован:27.11.2013
kisa писал(а):
Игрушка увлекательная, но недопонял, как поймать ближайший цвет RAL :oops: Тупо подбором - перебором?

:ROFL: Техническое задание :ROFL:
Цитата:
Освоил кое-как.

А я тодумаю - и чего это в эфире такая тишина? Точно БєгущаяЧєрєпаха сказал: "пипетками играются!" :D
Цитата:
Но как-то во встроеном каталоге РАЛ цвета ну совсем не похожи...

Не похожи на что? Вот в чем вопрос. Эти коды взяты здесь и предназначены "для наиблее полного соответствия воспроизведения монитором цветов РАЛ".
А на мониторе мат и глянец по цвету не отличиш. Напоминаю про это!
Тут работы не початый край. Короче продолжаем борьбу с тенью. На сегодня обстановка такова:
1 Закончил пипетку. Винда никак не хотела отдавать мышу и клаву. Рычала, кусалась и лягалась. :)
Пипетка она же "образец". При запуске пипетки квадрат внизу-слева окрашивается цветом который стоит в поле "КОД ЦВЕТА". Если приставить его к объекту на экране то по методу исчезновения границы можно судить о соответствии цветов. Или пипетить тыкая мышей и нажимая "ПРОБЕЛ". При этом цвет переносится в поле "КОД ЦВЕТА". С пипет кой повнимательней - все фотки это сложные градиенты, переходы от света к тени. Именно поэтому пока отставил выборку квадратика и усреднение. Да и курсор мыши лучше стандартная стрелка вверх-влево. Как раз кончиком и берет.
2 Нашел еще две таблицы РАЛа, Design и Effect, добавил в прогу. Теперь там вроде более тысячи оттенков и возможно более похоже будет отображать нужные цвета. Так как вбивать в прогу цвета было лень заставил прогу читать их из Екселевского файла (правда стала дого запускаться, пока откроет Ексель, пока прочтает, пока закроет... :sad: ) Да, и на компе должен стоять МС_Оффис.
Зато это дает возможность записывать туда свои коды (цвета).
3 С цветами CMYK (для цветной печати) пока все непонятно информации пока нет. Создатели фотошопов держат в секрете. Поэтому о пропорциях красок пока будем мечтать. :)
4 Хочу сделать процедуру распечатки образцов на бумагу. Вот тогда их можно будет сравнить с книжечкой и пользовать в своих целях.
5 Поиск сделать тоже думал. Попробую "в лоб", если не получится придется городить базу данных а там я точно знаю как это сделать без проблем. Но программа разрастается. На сегодня в ней два файла: таблица и сама прога.

На этом прилагаю отчет о проделаной работе, жду предложений и замычаний. :smile:


Вложения:
RAL делишки.zip [598.93 КБ]
Скачиваний: 101


_________________
Моя нанолабораторія.
Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 17.11.2014 23:20 
Аватара пользователя

Сообщения: 10825
Город: Львів
Пол: Муж
Возраст: 43
Зарегистрирован:13.03.2013
Пішли піпєтіть ...

_________________
ИзображениеBeerBike&Co


Вернуться к началу
shoppage  personalpage P  
 
СообщениеДобавлено: 17.11.2014 23:55 
Аватара пользователя

Сообщения: 19192
Изображения: 13
Город: Киев
Пол: Муж
Возраст: 51
Зарегистрирован:07.10.2010
Не, шото перемудрили с новой весией. Запускается долго - не должна так маленькая прога. Пипетка не пипетит. Но то такое. Сейчас попробую обьяснить на примере старой, чего я выступал :D

_________________
Крокодиловодство 2.0


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:04 
Аватара пользователя

Сообщения: 10825
Город: Львів
Пол: Муж
Возраст: 43
Зарегистрирован:13.03.2013
kisa писал(а):
Не, шото перемудрили с новой версией. Пипетка не пипетит.

:yes: яплакаю.

_________________
ИзображениеBeerBike&Co


Вернуться к началу
shoppage  personalpage P  
 
СообщениеДобавлено: 18.11.2014 00:05 
Аватара пользователя

Сообщения: 1653
Изображения: 36
Город: Сіверськ, Україна
Пол: Муж
Возраст: 71
Зарегистрирован:27.11.2013
kisa писал(а):
Не, шото перемудрили с новой весией. Запускается долго - не должна так маленькая прога. Пипетка не пипетит. Но то такое. Сейчас попробую обьяснить на примере старой, чего я выступал :D

Запускается долго из за Екселя. Самомму не нравится. Решил перейти на базу данных. Там и проще и быстрее.
Пипетка работает так: вызвал, навел мышкой на точку, нажал клавишу пробел, квадратик в углу пипетки закрасился.
Нажал мышкой под надписями на чистом месте и тяни не отпуская клавишу мыши. Бросил и отлипло.

_________________
Моя нанолабораторія.


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:08 
Аватара пользователя

Сообщения: 1653
Изображения: 36
Город: Сіверськ, Україна
Пол: Муж
Возраст: 71
Зарегистрирован:27.11.2013
Бегущая Черепаха писал(а):
kisa писал(а):
Не, шото перемудрили с новой версией. Пипетка не пипетит.

:yes: яплакаю.

Изображение

_________________
Моя нанолабораторія.


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:21 
Аватара пользователя

Сообщения: 19192
Изображения: 13
Город: Киев
Пол: Муж
Возраст: 51
Зарегистрирован:07.10.2010
Та то такое - я уже взлюбил старую версию с отдельной чужой пипеткой - репутацию ретрограда надо поддерживать :lol:

В принципе, этого ПОЧТИ хватает.
Замечание получается какое. Вот живой велосипед (для сравнения), вот монитор с причандалами - Колирмания, Пипетка и фотка того велосипеда.

Возим пипеткой по фотке (никто не подсматривает? :lol: ), добиваясь в окошке наиболее похожего цвета. Сдаётся мне, от цифровой точности передачи и калибровок нужно отступить. Ведь вот она рама на фотке, я на неё смотрю и понимаю, какого она цвета. Хоть там тени и перливы - пофиг. Глаза понимают, какой там цвет, и пипеткой выбирают с нужного участка такой же, ориентируясь по окошку.

Поймали цвет - перенесли его в Колирманию. Он при этом не мониторе не поменялся, понятно.

А теперь берём самый официальный, из встроеного набора RAL, каким та рама покрашена, ставим его рядом. Ну ваще не похож.

Вложение:
sample.jpg
sample.jpg [ 257.26 КБ | Просмотров: 1447 ]


(для примера я спешил, не совсем попал, но неважно)

И тут крамольная мысль - надо ли та точность, если ПО ВОСПРИЯТИЮ (за что боремся) оно не похоже на а)живой велосипед, б) фотографию живого велосипеда, в) пойманый пипеткой цвет, притом что эти три пункта между собой похожи. Не добавить ли субъективности?
Да, задание в Paint RGB кода того цвета даёт ту же фигню, что и встроеная в Колирманию палитра..

Ну и момент, который до меня не дошёл всё-таки. Дальше просто тупым подбором-перебором берём RAL? Не, ну оно бОльшего и не надо, но если б тот RAL был похож на правду.

И даже здесь они очень разные. Некоторые похожи на правду, некоторые - на ту встроеную палитру.. https://www.google.com.ua/search?q=ral+ ... d=0CAUQ_AU

_________________
Крокодиловодство 2.0


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:29 
Аватара пользователя

Сообщения: 1653
Изображения: 36
Город: Сіверськ, Україна
Пол: Муж
Возраст: 71
Зарегистрирован:27.11.2013
kisa писал(а):
Ну и момент, который до меня не дошёл всё-таки. Дальше просто тупым подбором-перебором берём RAL? Не, ну оно бОльшего и не надо, но если б тот RAL был похож на правду.

И даже здесь они очень разные. Некоторые похожи на правду, некоторые - на ту встроеную палитру..

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

_________________
Моя нанолабораторія.


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:32 
Аватара пользователя

Сообщения: 19192
Изображения: 13
Город: Киев
Пол: Муж
Возраст: 51
Зарегистрирован:07.10.2010
:lol: Так нафига тыща, в богадельне, где красят, их поменьше :D Мне понравился минимализм первой версии, хоть и пипетка отдельная нужна - это не напрягает.
А новая раздражает скоростью загрузки, как Компас.

_________________
Крокодиловодство 2.0


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:44 
Аватара пользователя

Сообщения: 10825
Город: Львів
Пол: Муж
Возраст: 43
Зарегистрирован:13.03.2013
↑ Так таки так :yes: тьіщи не потрібно ми практично їх не використаєм :sad: , треба той мінімум з веєра розколірки скільки їх там 194
РАЛ являлся сокращенным обозначением полного названия Райх Аусшлюс фюр Лифербедингунген — Управления по торговым стандартам, образованного в Берлине в 1925 году.
В 1927 году появились цветовые образцы РАЛ. Они завоевали устойчивую репутацию и уже много лет служат средством общения между производителями краски и планировщиками цвета. Эти цвета (всего их 194) обозначаются четырехзначным числом с дополнительным пояснением; например, RAL 3000 Огненно-красный. Первая цифра в номере определяет приблизительное отнесение к соответствующей цветовой области: так, 6 отвечает зеленому цвету, 7 — серому....

Я в ідеалі бачу першу версію післярестайлінгової програми :D , відкрив програму на фоновому зоображені виліз піпеткою на потрібний обект вибрав і вуаля ! Отримуй найбільш наближений колір/код з доступних 194.
- пішов в кантору - Є ?, а тобі - Є ! Все !!!

_________________
ИзображениеBeerBike&Co


Вернуться к началу
shoppage  personalpage P  
 
СообщениеДобавлено: 18.11.2014 00:46 
Аватара пользователя

Сообщения: 1653
Изображения: 36
Город: Сіверськ, Україна
Пол: Муж
Возраст: 71
Зарегистрирован:27.11.2013
kisa писал(а):
:lol: Так нафига тыща, в богадельне, где красят, их поменьше :D Мне понравился минимализм первой версии, хоть и пипетка отдельная нужна - это не напрягает.
А новая раздражает скоростью загрузки, как Компас.

Переведу с Екселя на БД будет летать, искать и прочая и прочая....
Переделка нужна. Вначале думал просто с цветами поиграть на экране.
А потом увлекся.. Короче эти вопросы все легко решаемые, мне клаву только смазывать почаще надо :D
procedure TForm1.N29Click(Sender: TObject);
begin
SortToCHEK;
Table2.MasterSource := FSubs.DataSource1;
Table2.MasterFields := 'RASH';
FSubs.Table1.Active := True;
FSubs.ShowModal;
FSubs.Table1.Active := False;
Table2.MasterSource := NIL;
Table2.MasterFields := '';
end;

procedure TForm1.N34Click(Sender: TObject);
var FileName: TFileName;
mPATH, mFname, mDOM, mKV, mFIO, mFIO1, mLS: String;
mCOUNT, mERR: Integer;
mSUM:Currency;
begin
mCOUNT := 0;
mERR := 0;
mSUM := 0;
if OpenDialog1.Execute then begin
FSubs.Table1.Exclusive := True;
FSubs.Table1.EmptyTable;
FileName := OpenDialog1.FileName;
mPATH := ExtractFileDir(FileName);
mFname := ExtractFileName(FileName);
with FSubs do begin
Table2.DatabaseName := mPATH;
Table2.TableName := mFname;
Table2.Active := True;
Table1.Active := True;
REPEAT
Table1.Insert;
Table1.FieldByName('FIO').AsString :=
AnsiUpperCase(Table2.FieldByName('FIO').AsString);
Table1.FieldByName('ID_RAJ').AsString :=
Table2.FieldByName('ID_RAJ').AsString;
Table1.FieldByName('NP_CODE').AsString :=
Table2.FieldByName('NP_CODE').AsString;
Table1.FieldByName('NP_NAME').AsString :=
Table2.FieldByName('NP_NAME').AsString;
Table1.FieldByName('CAT_V').AsString :=
Table2.FieldByName('CAT_V').AsString;
Table1.FieldByName('VULCOD').AsString :=
Table2.FieldByName('VULCOD').AsString;
Table1.FieldByName('NAME_V').AsString :=
Table2.FieldByName('NAME_V').AsString;
Table1.FieldByName('BLD').AsString :=
AnsiLowerCase(Table2.FieldByName('BLD').AsString);
Table1.FieldByName('CORP').AsString :=
Table2.FieldByName('BLD').AsString;
Table1.FieldByName('FLAT').AsString :=
AnsiLowerCase(Table2.FieldByName('FLAT').AsString);
Table1.FieldByName('RASH').AsString :=
Table2.FieldByName('RASH').AsString;
Table1.FieldByName('NUMB').AsString :=
Table2.FieldByName('NUMB').AsString;
Table1.FieldByName('DAT1').AsDateTime :=
Table2.FieldByName('DAT1').AsDateTime;
Table1.FieldByName('DAT2').AsDateTime :=
Table2.FieldByName('DAT2').AsDateTime;
Table1.FieldByName('NM_PAY').AsFloat :=
Table2.FieldByName('NM_PAY').AsFloat;
Table1.FieldByName('P1').AsFloat :=
Table2.FieldByName('P1').AsFloat;
Table1.FieldByName('P2').AsFloat :=
Table2.FieldByName('P2').AsFloat;
Table1.FieldByName('P3').AsFloat :=
Table2.FieldByName('P3').AsFloat;
Table1.FieldByName('P4').AsFloat :=
Table2.FieldByName('P4').AsFloat;
Table1.FieldByName('P5').AsFloat :=
Table2.FieldByName('P5').AsFloat;
Table1.FieldByName('P6').AsFloat :=
Table2.FieldByName('P6').AsFloat;
Table1.FieldByName('P7').AsFloat :=
Table2.FieldByName('P7').AsFloat;
Table1.FieldByName('P8').AsFloat :=
Table2.FieldByName('P8').AsFloat;
Table1.FieldByName('SM1').AsFloat :=
Table2.FieldByName('SM1').AsFloat;
Table1.FieldByName('SM2').AsFloat :=
Table2.FieldByName('SM2').AsFloat;
Table1.FieldByName('SM3').AsFloat :=
Table2.FieldByName('SM3').AsFloat;
Table1.FieldByName('SM4').AsFloat :=
Table2.FieldByName('SM4').AsFloat;
Table1.FieldByName('SM5').AsFloat :=
Table2.FieldByName('SM5').AsFloat;
Table1.FieldByName('SM6').AsFloat :=
Table2.FieldByName('SM6').AsFloat;
Table1.FieldByName('SM7').AsFloat :=
Table2.FieldByName('SM7').AsFloat;
Table1.FieldByName('SM8').AsFloat :=
Table2.FieldByName('SM8').AsFloat;
Table1.FieldByName('SB1').AsFloat :=
Table2.FieldByName('SB1').AsFloat;
Table1.FieldByName('SB2').AsFloat :=
Table2.FieldByName('SB2').AsFloat;
Table1.FieldByName('SB3').AsFloat :=
Table2.FieldByName('SB3').AsFloat;
Table1.FieldByName('SB4').AsFloat :=
Table2.FieldByName('SB4').AsFloat;
Table1.FieldByName('SB5').AsFloat :=
Table2.FieldByName('SB5').AsFloat;
Table1.FieldByName('SB6').AsFloat :=
Table2.FieldByName('SB6').AsFloat;
Table1.FieldByName('SB7').AsFloat :=
Table2.FieldByName('SB7').AsFloat;
Table1.FieldByName('SB8').AsFloat :=
Table2.FieldByName('SB8').AsFloat;
Table1.FieldByName('OB1').AsFloat :=
Table2.FieldByName('OB1').AsFloat;
Table1.FieldByName('OB2').AsFloat :=
Table2.FieldByName('OB2').AsFloat;
Table1.FieldByName('OB3').AsFloat :=
Table2.FieldByName('OB3').AsFloat;
Table1.FieldByName('OB4').AsFloat :=
Table2.FieldByName('OB4').AsFloat;
Table1.FieldByName('OB5').AsFloat :=
Table2.FieldByName('OB5').AsFloat;
Table1.FieldByName('OB6').AsFloat :=
Table2.FieldByName('OB6').AsFloat;
Table1.FieldByName('OB7').AsFloat :=
Table2.FieldByName('OB7').AsFloat;
Table1.FieldByName('OB8').AsFloat :=
Table2.FieldByName('OB8').AsFloat;
Table1.FieldByName('SUMMA').AsFloat :=
Table2.FieldByName('SUMMA').AsFloat;
mSUM:=mSUM+Table2.FieldByName('SUMMA').AsCurrency;
Table1.FieldByName('NUMM').AsInteger :=
Table2.FieldByName('NUMM').AsInteger;
Table1.FieldByName('SUBS').AsFloat :=
Table2.FieldByName('SUBS').AsFloat;
Table1.FieldByName('KVT').AsInteger :=
Table2.FieldByName('KVT').AsInteger;
mCOUNT := mCOUNT + 1;
Table2.Next;

UNTIL Table2.Eof;
end;
FSubs.Table2.Active := False;
SortToCHEK;
Table2.MasterSource := FSubs.DataSource1;
Table2.MasterFields := 'RASH';
FSubs.Table1.First;
{ TODO : проверка ошибок в загруженной субсидии }
WHILE not FSubs.Table1.Eof DO begin
mFIO1 := Table2.FieldByName('FIO').AsString;
mFIO := FSubs.Table1.FieldByName('FIO').AsString;
mDOM := FSubs.Table1.FieldByName('BLD').AsString;
mKV := FSubs.Table1.FieldByName('FLAT').AsString;
mLS := Copy(FSubs.Table1.FieldByName('RASH').AsString,4,6);
If length(mDOM)=1 then mDOM := '00'+mDOM;
If length(mDOM)=2 then mDOM := '0'+mDOM;
If length(mKV)=1 then mKV:= '00'+mKV;
If length(mKV)=2 then mKV:= '0'+mKV;

IF not (Table2.FieldByName('CHEK').AsString=
FSubs.Table1.FieldByName('RASH').AsString) then mERR := 1;
IF not (mLS=(mDOM+mKV)) then mERR := 1;
IF not (Copy(mFIO1,0,Pos(' ',mFIO1))=Copy(mFIO,0,Pos(' ',mFIO))) then mERR := 1;
FSubs.Table1.Edit;
IF mERR = 0 then
FSubs.Table1.FieldByName('KVT').AsInteger := 0
ELSE
FSubs.Table1.FieldByName('KVT').AsInteger := 1;
mERR := 0;

FSubs.Table1.Next;
End;
FSubs.Table1.First;
ShowMessage('Загружено '+IntToStr(mCOUNT)+' на сумму '+CurrToStr(mSUM));
FSubs.Table1.Filter := 'KVT=1';

FSubs.ShowModal;
FSubs.Table1.Filter := '';
FSubs.Table1.Active := False;
Table2.MasterSource := NIL;
Table2.MasterFields := '';
FSubs.Table1.Exclusive := False;


End;
end;

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

procedure TForm1.N38Click(Sender: TObject);
begin
Kalendar.ShowModal;
PrnTabON;
SchPrn.QRLabel277.Caption:='по домам имеющих задолженность на '+DateToStr(Kalendar.MonthCalendar1.Date);
SchPrn.Table2.Filter := '';
//SchPrn.Table2.Filter := 'SALDOK>'+QuotedStr(Edit3.Text);
SchPrn.Table2.First;
SchPrn.QuickRep10.Preview;
SchPrn.Table2.Filter := '';
ScrTabON;

end;

procedure TForm1.N39Click(Sender: TObject);
VAR aLS, mNU, mDOM, mKV: String;
mCOUNT, mERR: Integer;
begin
aLS := '';
SortToFIO;
with Table2 do
begin
DisableControls;
First;
while not Eof do
begin
aLS := '';
mNU := FieldByName('NU').AsString;
mDOM := FieldByName('DOM').AsString;
mKV := FieldByName('KV').AsString;
If length(mNU)=1 then aLS := '00'+mNU;
If length(mNU)=2 then aLS := '0'+mNU;
If length(mNU)=3 then aLS := mNU;
If length(mDOM)=1 then aLS := aLS+'00'+mDOM;
If length(mDOM)=2 then aLS := aLS+'0'+mDOM;
If length(mDOM)=3 then aLS := aLS+mDOM;
If length(mKV)=1 then aLS := aLS+'00'+mKV;
If length(mKV)=2 then aLS := aLS+'0'+mKV;
If length(mKV)=3 then aLS := aLS+mKV;
Edit;
FieldByName('CHEK').AsString := aLS;
Next;
end;

SortToCHEK;
First;
mCOUNT := 1;
mERR := 0;
mDOM := '';
aLS := FieldByName('CHEK').AsString;
Next;
WHILE not Eof DO begin
IF aLS = FieldByName('CHEK').AsString then begin
mERR := mERR+1;
mDOM := mDOM + ' ' + aLS;
end;
aLS := FieldByName('CHEK').AsString;
mCOUNT := mCOUNT+1;
Next;
End;
ShowMessage('Проверено '+IntToStr(mCOUNT)+', ошибок '+IntToStr(mERR)+' '+mDOM);
EnableControls;
end;

end;

procedure TForm1.Word1Click(Sender: TObject);
var
//F2: TextFile;
Ch, mCHEK, mFIO, mDOM: String;
mDOLG, mPLAT, mSUMD,mSUMJ: Currency;
mCOUNT: Real;
mFILTER: Real;
mKVO:Integer;
vwidth, vspace, par, tformat, tappbrd, rng : OleVariant;
i:Integer;
begin
vwidth := 270;
vspace := 10;
//tformat:=wdTableFormatWeb3;
tformat:=wdTableFormatGrid5;
tappbrd:=wdTableFormatApplyBorders;
//vesp := wdLineSpaceSingle;
mFILTER := 0;
mSUMJ := 0;
mSUMD := 0;
mKVO := 0;
i := 1;

OKRightDlg.ShowModal;
Kalendar.ShowModal;

if CreateWord then begin
Messagebox(0,'Word запущен.','',0);
//W.Visible:=True;
If AddDoc then begin
//Messagebox(0,'Документ создан.','',0);
W.Selection.Font.Name:='Courier New';
W.Selection.Font.Size:=12;
W.Selection.Font.Bold:=true;
W.ActiveDocument.PageSetup.TopMargin := CentimetersToPoints(0.5);
W.ActiveDocument.PageSetup.BottomMargin := CentimetersToPoints(0.5);
W.ActiveDocument.PageSetup.LeftMargin := CentimetersToPoints(0.5);
W.ActiveDocument.PageSetup.RightMargin := CentimetersToPoints(0.5);
//W.ActiveDocument.PageSetup.TextColumns := CentimetersToPoints(5);
//W.ActiveDocument.PageSetup.TextColumns.Add(vwidth, vspace,);

DBGrid2.DataSource := nil;
SortToCHEK;
IF OKRightDlg.RadioGroup1.ItemIndex = 0 then
mFILTER := StrToInt(Edit3.Text);
IF OKRightDlg.RadioGroup1.ItemIndex = 1 then
Table2.Filter := 'SALDOK>'+QuotedStr(Edit3.Text);

Table2.First;
mDOM := Table2.FieldByName('DOM').AsString;
W.Selection.TypeText(' СПИСОК');
W.Selection.TypeText(#13#10'квартиросьемщиков имеющих задолженность по квартплате на '+DateToStr(Kalendar.MonthCalendar1.Date));
W.Selection.TypeText(#13#10'по ул.'+Table1.FieldByName('UL').AsString+' дом '+mDOM);

W.Selection.Tables.Add
(Range:=W.Selection.Range,NumRows:=1,NumColumns:=5);
W.ActiveDocument.Tables.Item(1).AutoFormat
(tformat, tappbrd, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam);
// размеры отдельных строк и столбцов
W.ActiveDocument.Tables.Item(1).Columns.Item(1).Width:=75;
W.ActiveDocument.Tables.Item(1).Columns.Item(2).Width:=250;
W.ActiveDocument.Tables.Item(1).Columns.Item(3).Width:=60;
W.ActiveDocument.Tables.Item(1).Columns.Item(4).Width:=60;
W.ActiveDocument.Tables.Item(1).Columns.Item(5).Width:=60;
W.ActiveDocument.Tables.Item(1).Rows.Item(1).Height:=30;
// вставка текста в ячейку (номерстроки, номер столбца)
W.ActiveDocument.Tables.Item(1).Cell(1,1).Range.Text:='Лицевой счет';
//W.ActiveDocument.Tables.Item(1).Cell(1,2).Range.Text:='Фамилия, имя, отчество';
W.ActiveDocument.Tables.Item(1).Cell(1,2).Range.Text:='Квартира №';
W.ActiveDocument.Tables.Item(1).Cell(1,3).Range.Text:='Сумма долга';
W.ActiveDocument.Tables.Item(1).Cell(1,4).Range.Text:='Платеж за мес';
W.ActiveDocument.Tables.Item(1).Cell(1,5).Range.Text:='Не уп- лочено';

while not Table2.Eof do begin
mCHEK:=Table2.FieldByName('CHEK').AsString;
//mFIO:=Table2.FieldByName('FIO').AsString;
mFIO:=Table2.FieldByName('KV').AsString;
mDOLG:=Table2.FieldByName('SALDOK').AsFloat;
mPLAT:=Table2.FieldByName('NACHIS').AsFloat;
IF mPLAT>0 then begin
mCOUNT:=INT(mDOLG / mPLAT);
IF mCOUNT>=mFILTER then begin
Ch := mCHEK+' '+Format('%-25s',[mFIO])+' '+Format('%6.2f',[mDOLG])+' '
+Format('%6.2f',[mPLAT])+' '+Format('%6.0f',[mCOUNT]);
SetTextToDoc(#13#10+Ch, true);
mSUMD := mSUMD + mDOLG;
mSUMJ := mSUMJ + mDOLG;
mKVO := mKVO + 1;
ProgressBar1.StepIt;
end;
end;
Table2.Next;
IF not (mDOM = Table2.FieldByName('DOM').AsString) then begin
mDOM := Table2.FieldByName('DOM').AsString;
SetTextToDoc(#13#10'--------------------------------------------------------------------', true);
SetTextToDoc(#13#10'Всего задолженность по дому '+CurrToStr(mSUMD), true);
IF mSUMD>0 then begin
SetTextToDoc(#13#10'Уважаемые жильцы!', true);
SetTextToDoc(#13#10'Убедительно просим погасить задолженность по квартплате на расчетный', true);
SetTextToDoc(#13#10'счет № '+LCHEK+' '+BANK+' '+MFO, true);
SetTextToDoc(#13#10'Телефон для справок 5-25-65 Администрация '+FIRM, true);
end;
SetTextToDoc(#13#10'', true);
W.Selection.EndKey(wdStory);
IF CheckBox3.Checked then
W.Selection.InsertBreak;
SetTextToDoc(#13#10' СПИСОК', true);
// W.Selection.TypeText(#13#10'квартиросьемщиков имеющих задолженность по квартплате на '+DateToStr(Kalendar.MonthCalendar1.Date));
SetTextToDoc(#13#10'квартиросьемщиков имеющих задолженность по квартплате на '+DateToStr(Kalendar.MonthCalendar1.Date), true);
SetTextToDoc(#13#10'по ул.'+Table1.FieldByName('UL').AsString+' дом '+mDOM, true);
SetTextToDoc(#13#10, true);
W.Selection.EndKey(wdStory);
i := i+1;

W.ActiveDocument.Tables.Add
(Range:=W.Selection.Range,NumRows:=1,NumColumns:=5);
W.ActiveDocument.Tables.Item(i).AutoFormat
(tformat, tappbrd, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam);
// размеры отдельных строк и столбцов
W.ActiveDocument.Tables.Item(i).Columns.Item(1).Width:=75;
W.ActiveDocument.Tables.Item(i).Columns.Item(2).Width:=250;
W.ActiveDocument.Tables.Item(i).Columns.Item(3).Width:=60;
W.ActiveDocument.Tables.Item(i).Columns.Item(4).Width:=60;
W.ActiveDocument.Tables.Item(i).Columns.Item(5).Width:=60;
W.ActiveDocument.Tables.Item(i).Rows.Item(1).Height:=30;
// вставка текста в ячейку (номерстроки, номер столбца)
W.ActiveDocument.Tables.Item(i).Cell(1,1).Range.Text:='Лицевой счет';
W.ActiveDocument.Tables.Item(i).Cell(1,2).Range.Text:='Квартира №';
W.ActiveDocument.Tables.Item(i).Cell(1,3).Range.Text:='Сумма долга';
W.ActiveDocument.Tables.Item(i).Cell(1,4).Range.Text:='Платеж за мес';
W.ActiveDocument.Tables.Item(i).Cell(1,5).Range.Text:='Не уп- лочено';
mSUMD := 0;
END;
end;
SetTextToDoc(#13#10'--------------------------------------------------------------------', true);
SetTextToDoc(#13#10'Всего задолженность по дому '+CurrToStr(mSUMD), true);
SetTextToDoc(#13#10'Уважаемые жильцы!', true);
SetTextToDoc(#13#10'Убедительно просим погасить задолженность по квартплате на расчетный', true);
SetTextToDoc(#13#10'счет № '+LCHEK+' '+BANK+' '+MFO, true);
SetTextToDoc(#13#10'Телефон для справок 5-25-65 Администрация '+FIRM, true);
SetTextToDoc(#13#10'', true);
SetTextToDoc(#13#10'--------------------------------------------------------------------', true);
SetTextToDoc(#13#10'Всего задолженность по жилфонду '+CurrToStr(mSUMJ), true);
SetTextToDoc(#13#10'Всего квартир '+IntToStr(mKVO), true);

end;
end;

Table2.Filter := '';
W.Visible:=True;
ShowMessage('Готово!');
ProgressBar1.Position := 0;
DBGrid2.DataSource := DataSource2;
end;

_________________
Моя нанолабораторія.


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:50 
Аватара пользователя

Сообщения: 19192
Изображения: 13
Город: Киев
Пол: Муж
Возраст: 51
Зарегистрирован:07.10.2010
дада из тех 194. С остальными в богадельне пошлют. Теоретически они их и месить должны, практически у них и кислотных нет, и те не все.

Не надо усложнять! И пипетка встроеная вроде менее удобна, чем внешняя.
Та не, что-то цветов там дофига и без толку. Там, где "цвета" - это самое оно и есть, вот эти должны быть:
Вложение:
ral.jpg
ral.jpg [ 104.6 КБ | Просмотров: 1436 ]

И всё! Не нужно расширять функционал и набор относительно первой версии, кроме автоподбора.. Лучше пусть будет однозадачная программа для одноклеточных в этом вопросе, вроде меня. Ткнул два раза - понял. Обозначить, что эта программа только для РАЛа, то бишь для порошковой окраски. Большинству именно этого и надо. А колористику разводить - это для отдельных энтузиастов. Другое направление. Вот им цифровую точность, смешение разных цветов и т.п.

Нужна мелкая програмулина типа увидел на фотке классный цвет - понял его код по РАЛ (или ближайший - сравнить УЖЕ можно) - отдал в покраску - получил результаат.

Хочется, чтобы цвета выглядели так.
RAL5011

Изображение


RAL6005

Изображение


RAL1013

Изображение


RAL1015

Изображение

Вот в моих примерах цвета похожи на собственные фотографии на том же мониторе, хотя надёрганы из разных мест.

_________________
Крокодиловодство 2.0


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
СообщениеДобавлено: 18.11.2014 00:57 
Аватара пользователя

Сообщения: 1653
Изображения: 36
Город: Сіверськ, Україна
Пол: Муж
Возраст: 71
Зарегистрирован:27.11.2013
kisa писал(а):
Не надо усложнять!

Задачу понял! :)

_________________
Моя нанолабораторія.


Вернуться к началу
shoppage  personalpage P Персональный альбом  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8 ... 14, Bce  След.


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
  © Mishael 2003-2024
Наши друзья: Телеграм-канал про SEO | Рыбалка в Полтаве
Мобильный вид

[ Time : 0.159s | 35 Queries | GZIP : On ]
Reputation System ©'