101

(1 replies, posted in Russian)

Здравствуйте Дмитрий!!!
Я нашёл темы про SMS...это здорово работает!!!
микро вопросик...а с мобильного  модема 4G...возможна отправка SMS???
если ДА может у Вас наброски есть или сылочка в нужном направлении???

102

(35 replies, posted in Russian)

Дмитрий огромное Вам СПАСИБО!!!
Друзья кому интересно скрипт РАБОЧИЙ...
правда кое что поправил...поменял местами...Дмитрий надеюсь правильно!!!

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
    iTimer := 90;               //задаём время в сек...
    Timer.Enabled := True;      // Start timer
    Timer.OnTimer := @OnTimer;  // event procedure
end;

procedure Form1_OnShow (Sender: string; Action: string);
begin
    Timer := TTimer.Create(nil); // создать таймер
    Timer.Interval := 1000;
end;

ЕЩЁ РАЗ СПАСИБО!!!

103

(35 replies, posted in Russian)

Друзья!!! помогите со скриптом...
- НА Form1 кликаем на Button1...
- запускается таймер обратного отчёта в Label1...
- при обнулении Label1(00:00:00) открывается Form2
На форуме есть примеры таймера...не смог прикрутить живой Label1

var
   Timer: TTimer;
   iTimer: integer;

procedure Form1_OnShow (Sender: string; Action: string);
begin
     Timer := TTimer.Create(nil); // create timer
     Timer.OnTimer := @OnTimer;  // event procedure
     Timer.Interval := 1000; // 5 sec
     Timer.Enabled := True;  // Start timer
     frmSplash.ShowModal; // Show welcome screen
end;

procedure OnTimer (Sender: TObject);
begin
     iTimer := iTimer + 1;
     frmSplash.Label2.Caption := 'Start after '+IntToStr(5-iTimer)+' seconds or press ''Start'' button.';

   //    frmSplash.Label2.Caption := '00:'+IntToStr(15-iTimer)+;
   //    frmSplash.Label2.Caption := FormatDateTime('nn:ss',(+IntToStr(5-iTimer)+));


     if iTimer > 5 then
     begin
          Timer.Enabled := False;
          frmSplash.Close;
          Timer.Free;
     end;
end;

procedure frmSplash_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
     frmSplash.Close;
end;


Это возможно???(можно только скрипт)
рис.прилагается...

104

(35 replies, posted in Russian)

Дмитрий я ожидал...большущий скриптище, а тут...
Здорово!!!Спасибо!!!

105

(35 replies, posted in Russian)

Дмитрий...разобрался...ПОСТ№13...
У меня на ПК стоит дата в настройках 03.10.2016, а sDate:=('2016.10.03 11:11:11')   
из за этого выдаёт ошибку "2016.10.03 11:11:11" is not a valid date and time.
если  я у себя на ПК меняю дату в настройках на " DD.MM.yyyy"...тогда всё ОК!!!
исходя из этого ВОПРОС изменяется:
Возможно ли по клику на битон изменить формат даты на ПК????????????????
или есть способ...подстраивать формат  sDate:=('2016.10.03 11:11:11')
под формат который установлен наПК???????????????????????????????????

106

(35 replies, posted in Russian)

тест проект смастерить???

107

(35 replies, posted in Russian)

DriveSoft wrote:

RZ-007
К сожалению в данном скрипте я не вижу строку, которая могла бы вызвать данную ошибку. Также не ясно что за переменная m.

переменная m...это опечатка...имелось ввиду sDate
А ошибку вызывает  sDate:=('2016.10.03 11:11:11')    "2016.10.03 11:11:11" is not a valid date and time.
если изменяю на sDate:=('03.10.2016 11:11:11'); , тогда всё ОК!!!

108

(35 replies, posted in Russian)

Всем хорошего настроения!!!
имею:

procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
var
sDate: String;
{..........................}
begin
{..........................}
sDate:=('2016.10.03 11:11:11');
sDate:= '"'+ FormatDateTime('yyyy-MM-DD hh:nn:ss.000',StrToDateTime(m))+ '"';
SQLExecute ('INSERT INTO AAA (mydata) VALUES (''' + sDate + ''');');
end;

РУГАЕТСЯ: "2016.10.03 11:11:11"  is not a valid floaiting point value!!!
но если меняю sDate:=('03.10.2016 11:11:11'); , тогда всё ОК!!!
ДРУЗЬЯ ПОМОГИТЕ :
сделать запись в таблицу "ААА"???
или в строке sDate:=('2016.10.03 11:11:11'); изменить формат строки на sDate:=('03.10.2016 11:11:11');???
или в sDate:= '"'+ FormatDateTime('yyyy-MM-DD hh:nn:ss.000',StrToDateTime(m))+ '"'; ,что то изменить???
Зарание СПАСИБО!!!

109

(46 replies, posted in Russian)

Спасибо Дмитрий...это не критично!!!

110

(46 replies, posted in Russian)

Здравствуйте Дмитрий!!!
ПОСТ №16...Замечательное решение,
но в моём случае вопрос остался открытым...
============================================
ОК!!!...в этом окошке видно отрицательный профит, но
профит сливается с датой!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ЕСТЬ ВОЗМОЖНОСТЬ :
1.) как то их разделить?
2.) в окошке окрасить  шрифт(профита) или дату?
============================================
Взгляните пожалуйста рисунок...

111

(46 replies, posted in Russian)

Дмитрий..это просто чудо!!!  РАБОТАЕТ !!!
Два микро вопросика, для красоты графика....
профит слился с датой....
ВОПРОС:
1.) возможно окрасить профит в другой цвет....
а.) просто окрасить в другой цвет...
б.) если профит >0, тогда в синий...
    если профит <0, тогда в красный...
2.) разделить профит от даты многоточием
      (1000   ...  31.05.2016)
рисунок прилогается...

112

(46 replies, posted in Russian)

Всем привет!!!
имею такой скрипт:

var
   ChartLine: TChart;
procedure Form1_OnShow (Sender: string; Action: string);
begin
  ChartLine := TChart.Create(Form1);
  ChartLine.Parent := Form1.Panel1;
  ChartLine.Align := alClient;
  ChartLine.AddSeries(TLineSeries.Create(ChartLine));
  ChartLine.Series[0].XValues.DateTime := True;
  ChartLine.View3D := False; //  отключить 3д
end;

 procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
var
    Results: TDataSet;
    DateValue: Double;
    ProfitValue: string;
    i,c: integer;

begin
    ChartLine.Series[0].Clear;

    c := Form1.TableGrid1.RowCount-1;
    for i := 0 to c do
    begin
        if ValidDate(Form1.TableGrid1.Cells[1, i]) then DateValue := StrToDate(Form1.TableGrid1.Cells[1, i]);
        ProfitValue := Form1.TableGrid1.Cells[2, i];

        if ValidFloat(ProfitValue) then ChartLine.Series[0].AddXY(DateValue, StrToFloat(ProfitValue) );
    end;
end;

т.е. данные для графика берутся из TableGrid1...
это РАБОТАЕТ ОК!!!
ПРОБЛЕМА в том, что если дата от предыдущей даты с большим разрывом, то график теряет "красоту"...
Вопрос: есть способ откорректировать скрипт, чтоб по оси где "дата"...
дата распределялась равномерно, не смотря большой разрыв между датами???
Заранее СПАСИБО!!!

113

(89 replies, posted in Russian)

ЭТО работает!!! УРА!!!
БЛАГОДАРЮ ВАС!!!

114

(89 replies, posted in Russian)

Здравствуйте!!!
Дмитрий Вас не было чуток дней....для нас как вечность...
Взгляните ПОСТ №35 ПОЖАЛУЙСТА???

115

(89 replies, posted in Russian)

Пост № 34...
использую вот этот скрипт:

procedure Form3_Button1_OnClick (Sender: string; var Cancel: boolean);
var
   s: string;
begin
     // SQL-запрос для проверки имени пользователя и пароля
    s := SQLExecute('SELECT count(id) FROM AAA WHERE (id_BBB = ''' + IntToStr(Form3.ComboBox1.dbItemID) + ''') AND (data = ''' + Form3.DateTimePicker1.sqlDate + ''');');

     // если находка SQL запросов Логин и пароль
     if (s <> '0') and (s<>'') then
     begin
       Form4.Show;
     end else Form5.Show;
end;

К моему сожалению, не хочет работать с датой...подскажите в чём ошибка???

116

(89 replies, posted in Russian)

Друзья!!!
Подскажите скрипт для проверки дубликата в таблице,
где есть поля связь (id)    и  дата ???

117

(89 replies, posted in Russian)

ДРУЗЬЯ !!!
ПОСТ №29 или №31 безнадёжен или есть у кого мысль с чего начать....

118

(46 replies, posted in Russian)

Дмитрий это просто ЧУДЕСНО!!!
СПАСИБО!!!

119

(89 replies, posted in Russian)

DriveSoft
Пожалуйста приложите тестовый проект с данными таблицами и данными, постараюсь что нибудь придумать...

smile и smile

120

(23 replies, posted in Russian)

Дмитрий взгляни пожалуйста ПОСТ № 10...:) и smile

121

(23 replies, posted in Russian)

Всем привет!!!
У меня таблица "ААА" с полями "id_BBB" , "id_CCC" и "ааа"
прошу у скрипта показать :

Form2.Edit1.Text := SQLExecute ('SELECT ааа FROM ААА WHERE id = ' + 
IntToStr((Form2.ComboBox1.dbItemID) + (Form2.ComboBox2.dbItemID)) );

т.е. имея два известных поля в строчке отобразить третье...
скрипт показывает, но всё "шиворот на выворот",
где я что-то упустил???

122

(89 replies, posted in Russian)

Доброго времени суток!!!
есть таблица "ААА" в ней такие записи....

товар             дата             цена
________|___________|_____
хлеб          20.05.2016        1
хлеб          20.05.2016        3
хлеб          20.05.2016        5
------------------------------------------
молоко      20.05.2016        7
молоко      20.05.2016        3
=======================
хлеб          21.05.2016       3
хлеб          21.05.2016       2
хлеб          21.05.2016       3
----------------------------------------
молоко      21.05.2016      5
молоко      21.05.2016      6

подскажите как грамотно заполнить таблицу "ВВВ",
чтобы получить такие записи в таблице ???

товар              дата            цена
________|___________|_____
хлеб           20.05.2016       9
молоко       20.05.2016     10
----------------------------------------
хлеб           21.05.2016      8
молоко       21.05.2016     11

т.е...............
1.) отобразить дату которая присутствовала на тот период в таблице "ААА" один раз!
2.) отобразить товар один раз, который присутствовал в этот день!
3.) отобразить общую сумму товара за этот день!

123

(46 replies, posted in Russian)

Всем хорошего настроения!!!

Пожалуйста опишите словами, что именно необходимо.

не принципиально но....
1.) линии чертились не просто сглажено, а через точки...
2.) если значение больше нулевого значения...точка(маленький кругляшок) зелёным цветом,
если меньше красным....

124

(89 replies, posted in Russian)

ПОСТ №25

Увы я могу помочь только с конкретным вопросом, чтобы разобраться с данным вопросом и понять его, уйдет как минимум час времени, к сожалению не могу себе этого позволить.

Дмитрий..."методом научного тыка" добился нужного результата.....
Вот результат моих бесонных ночей...

procedure Form3_Button1_OnClick (Sender: string; var Cancel: boolean);
var
   sid: string;
begin

     if (Form3.ComboBox2.dbItemID = -1) and (Form3.ComboBox2.Text <> '')     then
     begin
          // проверить, если оценка уже существует

sid := SQLExecute('SELECT IFNULL(id_AAA, -1)FROM BBB WHERE id = ' +
       IntToStr(Form3.ComboBox2.dbItemID)+'  LIKE "'+Form3.ComboBox1.Text+'"');

          if ValidInt(sid) then
             Form3.ComboBox2.dbItemID:= StrToInt(sid)
//============== всё что ниже работает ОК!!!==================================================================
          // если оценка не существует, предложить  добавления
          else begin
               if 6 = MessageDlg('Добавить запись' + Form3.ComboBox2.Text, mtConfirmation, mbYes + mbNo, 0) then
               begin
       SQLExecute('INSERT INTO BBB (id_AAA,bbb) VALUES ('+Form3.ComboBox1.sqlValue+',"'+Form3.ComboBox2.Text+'")');

       Form3.Combobox2.DoOnChange;   //дал понять, что у него значение обновилось...
       UpdateDatabase('BBB');
       Form3.ComboBox2.dbItemID := Last_Insert_id('bbb');

               end else
               begin  // если Нет...делаем:

                Cancel := True;
                Form3.ComboBox2.dbItemID:= -1;
                Form3.ComboBox2.Text := '';
               end;
          end;
     end;
end;

Вроде как работает, НО.....в верхней части есть где-то ошибка.....
Если в этой строчке:

IntToStr(Form3.ComboBox2.dbItemID)+'  LIKE "'+Form3.ComboBox1.Text+'"');

перед LIKE стереть  два пробела выдаёт ошибку.....
добавляю   +  '(пробел+пробел с клавиатуры)LIKE   работает....
НЕ сочтите за трудность взгляните на скриптик.....

125

(46 replies, posted in Russian)

Дмитрий это просто чудесно!!!
данные из грида для графика работают...ОК!!!
ПОСТ №1

2.) Суть вопроса изложена в рисунку, который прикреплён ниже