1,051

(8 replies, posted in Russian)

возможно есть какая-то процедура связанныя с этим именем компонента или тип свойтва у этой кнопки не верен

1,052

(8 replies, posted in Russian)

что именно добавили?

vit007 wrote:

Вот настройки таблицы frmMain.TableGrid1

notice - это у ВАс библиотека? есла да, то изменять в этой таблице данные не правельно, значение строки измнится для всех  ссылающихся записей


var
sId:string;
begin
  sId:= SQLEXecute('SELECT id_notice FROM request  WHERE  id=' +frmMain.TableGrid1.sqlValue );
  SQLEXecute('UPDATE notice SET setNotice="'+frmAddNote.Edit1.Text+'" WHERE id=' +sId);
  frmMain.TableGrid1.dbUpdate;
end;

request.id_notice где поле id_notice уже содержит id записи из таблицы notice

попробуйте этот пример

получить последнею запись

maxID := IntToStr(Last_Insert_id);

получить последнею запись в конкрентой таблице

 maxID := SQLExecute('SELECT MAX(id) FROM b');

1,056

(14 replies, posted in General)

procedure Form1_TableGrid1_OnClick (Sender: TObject);
begin
ShowMessage(Form1.TableGrid1.Cells[1,Form1.TableGrid1.SelectedRow]);
end;

 
TableGrid1_OnClick

ну, да, а что именно вы хотите получить?

это глобальная - пишется в самом верху вашей страницы
ее не нужно помещать в процедуру просто напишите как в примере в самом начале страницы

 //глобальная переменная
var
name:string;

 
это локольная переменная - обьявляется в самой процедуре

procedure Form1_Edit1_OnChange (Sender: TObject);
var
name:string;
begin
end;

Весь ваш лист СКРИПТ - это и есть  программа а процедуры в листе - это подпрограммы...
глобальная переменная объявляется в начале листа и действует во всей программе и подпрограммах..

vit007 wrote:
+Form1.TableGrid1.sqlValue

Не помогло, скорее из-за того, что на вызванной форме две таблицы, где запись производится не в основную, а вспомогательную. Т.к. для основной все работает и через стандартный инструмент.

А можно по больше с глобальной переменной... т.е. в нее, переменную, как в регистр, помещается значение, и его можно использовать где угодно? и как ее использовать?

глобальная переменная указывается в начале листинга вашего скрипта


var
переменная:тип переменной;
 
глобальная переменная может вызываться и использоваться в любой процедуре..

процедера (*********);
begin
переменная:=значение;
end;

 
 
Локальная переменнная вызывается в процедуре и может использоваться только в пределах этой процедуры

процедера (*********);
var
переменная:тип переменной;
begin
переменная:=значение;
end;

vit007 wrote:

Столкнулся с такой проблемой в своем проекте...
При переходе "показать" с главного грида по определенно записи открывается форма... Все ок. Но если, я изменяю что-то и делаю через кнопку "сохранить запись", то у меня появляется новая запись, а не обновляется старая...

Использовал тогда такую конструкцию

SQLExecute('UPDATE client SET name = "'+frmNote.Edit1.Text+'" WHERE id='+frmNote.ComboBox7.sqlValue);

Все хорошо, но приходится создавать и прятать элемент ComboBox7

Подскажите, еще способы, сп.

+Form1.TableGrid1.sqlValue

обновить таблицу

Form1.TableGrid1.dbUpdate;

id можно получать от куда угодно с любой формы
можно еще создать глобальную переменную и помещать в нее  id записи при клике на таблице

var
sId:string;

procedure Form1_TableGrid1_OnCellClick (Sender: TObject; ACol, ARow: Integer);
begin
  sId:=SQLEXecute('SELECT id FROM a WHERE id='+ Form1.TableGrid1.sqlValue );
  showmessage(sId);
end;

1,061

(4 replies, posted in Russian)

.

1,062

(4 replies, posted in Russian)

max1779signal wrote:

День добрый. Есть таблица на форме куда отбираю записи с помощью КомбоБоксов.
И есть вторая таблица. Куда надо поместить выборочно записи из первой таблицы для последующего вывода в Report.
Помогите как это сделать дополнительной кнопкой и скриптом?

получается Вам нужна еще одна (временная) таблица, куда будут капироваться выбранные Вами значения..
а потом таблицу вывести в Report..

Вам нужно решить от куда именно будут капироваться данные из таблицы или из ячеек TableGrid..

если асновной грид имеет сводные данные из разных таблиц, то лучше капировать  данные из ячеек TableGrid.

1,063

(9 replies, posted in Russian)

поробуйте MessageBox

пример

if IDYES = MessageBox('Ваш текст','Ваш заголовок', MB_YESNO+MB_ICONINFORMATION) then showmessage('Вы нажали ДА ! теперь Вы должны банку!');

Buttons:
MB_OK
MB_OKCANCEL
MB_ABORTRETRYIGNORE
MB_YESNOCANCEL
MB_YESNO
MB_RETRYCANCEL

Results:
IDOK
IDCANCEL
IDABORT
IDRETRY
IDIGNORE
IDYES
IDNO

Icons
MB_ICONWARNING
MB_ICONINFORMATION
MB_ICONASTERISK
MB_ICONQUESTION
MB_ICONSTOP
MB_ICONERROR

1,064

(3 replies, posted in Russian)

Большое спасибо!!

1,065

(3 replies, posted in Russian)

загружаем объект json
получаем объект "sms"
получаем объект "70000000000"
получаем ключ "status_code"

понятно тоесть я пытался получать масив
JsonArray:=TJSONArray(JSONObject.GetPairByName('sms').JsonValue);

что есть не правельно
но я всеравно не могу получить объек из объекта


procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
var
sl:TStringList;
JSONObject, JSONObjProp, JSONObjProp2: TJSONObject;
JSONString: TJSONString;
begin
  sl:=TStringList.Create;
  JSONObject := nil;
  sl.Text:='{"status": "OK", "status_code": 100, "sms": {"70000000000": {"status": "ERROR", "status_code": 232, "status_text": "Превышен лимит одинаковых сообщений на этот номер в день" } }, "balance": 10 }';
  JSONObject:=TJSONObject(TJSONObject.ParseJSONValue(sl.Text));
  if JSONObject <> nil then
   begin
   JSONObjProp := TJSONObject( TJSONObject.GetPairByName('sms').JsonValue);
   JSONObjProp2 := TJSONObject( JSONObjProp.GetPairByName('70000000000').JsonValue);
   JSONString := TJSONString(JSONObjProp2.GetPairByName('status_code').JsonValue);
   ShowMessage(JSONString.Value);
 end;
end;

1,066

(3 replies, posted in Russian)

ответ

{
    "status": "OK",
    "status_code": 100,
    "sms": {
        "70000000000": {
            "status": "ERROR",
            "status_code": 232,
            "status_text": "Превышен лимит одинаковых сообщений на этот номер в день"
        }
    },
    "balance": 10
}

парсинг

 
JSONObject:=TJSONObject(TJSONObject.ParseJSONValue(smsquestion.responsetext));
if JSONObject <> nil then
begin
JsonArray:=TJSONArray(JSONObject.GetPairByName('sms').JsonValue);
for i := 0 to JsonArray.Size-1 do
begin
JSONObjProp := TJSONObject( TJSONObject(JsonArray.Get(i)).GetPairByName(smst).JsonValue );
JSONString := TJSONString(JSONObjProp.GetPairByName('status_code').JsonValue);
ShowMessage(JSONString.Value);
end;
end;

ни как не могу понять где ошибка..

1,067

(17 replies, posted in Russian)

Andrei wrote:

Как правильно написать оператор StrToInt ?

if (id_priznzam = '1')  then SQLExecute ('INSERT INTO res (res_max, id_mod_print)  VALUES(' + IntToStr(pok_max)+', ' + StrToInt(idmodprint)+')')

+ IntToStr()+ - Тут Вы переводите из числового в строковое

+ StrToInt()+ Тут Вы переводите из строкового в числовое


Integer - целые числа

String - строковая переменная

1,068

(32 replies, posted in General)

if  Form1.TableGrid1.dbIndexToID(Form1.TableGrid1.GetRowAtPos(x,y)))<>'' then

ошибка, может я не правельно сохраняю документ?

procedure FrmHelp_RichEdit1_OnChange (Sender: TObject);
begin
  SQLEXecute('UPDATE  help SET richDescription= "'+FrmHelp.RichEdit1.TextRTF+'" WHERE id=' + FrmHelp.TreeView1.sqlValue);
end;

http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&amp;item=5698&amp;download=0

1,070

(2 replies, posted in Russian)

проблема решена заменой сервиса ))

1,071

(2 replies, posted in Russian)

vovka3003 wrote:

Где-то тут валяется решение...

спасибо...
Возникла еще проблема
когда я передаю запрос через программу получаю {"success":false,"data":null,"message":"Method not found."}
но если я вбиваю это в адресной строке {"success":true,"data":null,"message":"Successful authorization."}

подскажите в чем может быть проблема

1,072

(2 replies, posted in Russian)

запрос рабочий и верный проверял , соединяется
https://?@mail.ru:?@gate.smsaero.ru/v2/auth

но тут

url:='https://'+SMSLogin+':'+SMSAPI_ID+'@gate.smsaero.ru/v2/sms/send';
          smsquestion:=createoleobject('WinHttp.WinHttpRequest.5.1');
          smsquestion.open('POST', url, true);
          smsquestion.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
          smsquestion.send('&number='+SMSPhone+'&sign='+SMSSender+'&text='+SMSMessage+'&channel='+INFO);

http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&amp;item=5696&amp;download=0
проблема в этом ?@mail.ru - является логином
возможно-ли это как-то обойти?

нужна возможнасть создание собственных гиперссылок на компоненты в RichEdit

вижу это так

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
begin
  Form1.RichEdit1.HiperLinkWrite(Form1.RichEdit1.GetSelText,Form1.TreeView.SelectedRow:=1;)
end;

где
1.Текст к которому присваевается ссылка
2.Действие ссылки

1,074

(1 replies, posted in Russian)

список создается, но вот при выборе из списка все исчезает

procedure frmreports_OnShow (Sender: TObject; Action,s: string);
var
reporfile:TStringList;
i,t:integer;
begin
 reporfile := TStringList.Create;
 reporfile.Text := GetFilesList('report','*.fr3',False);
   t := reporfile.Count-1;
    for i:=0  to t  do
     begin
      frmreports.cbAdressReport.items.add(reporfile[i]);
     end;
end;

1,075

(6 replies, posted in Russian)

DriveSoft wrote:

У меня ошибки не возникает.


Что именно вы пытаетесь сделать с помощью функции group_concat? второй параметр данной функции - это разделитель, который будет использоваться при склейке полей, но у вас почему то указано там поле.

(SELECT group_concat(a.name1,a.name2) FROM a)  

понял .. мне нужно объединить имя фамилию и отчество они в одной таблице