Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по компонентам для Delphi, C++ Builder разных версий

Модерирует : ShIvADeSt

ShIvADeSt (26-06-2017 02:39): Продолжение тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=14667
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Продолжение раздела http://forum.ru-board.com/topic.cgi?forum=33&topic=6607&start=0  
Ссылки приветствуются.

См. также:

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 07:33 20-06-2007 | Исправлено: XPerformer, 14:41 24-10-2013
MagistrAnatol



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Народ, подсобите с PostgresDAC - горю -  
если можно подкиньте пример использования TPSQLQuery+TPSQLUpdateSQL для мастер-датайла -  
Во первых при использовании TPSQLUpdateSQL не могу отредактировать запись- точнее редактирую но данные не записываються
Вот запрос
update public."Proc_Grypu"
set
"Data" = :"Data",
"Proc" = :"Proc"
where
"ID_A_Inc" = :"ID_A_Inc" - ключевое поле
и не подставляеться ключ мастера при инсерте
insert into public."Proc_Grypu"
("Data", "Proc", "Mogno_Del", "Grypa_Macter_ID")
values
(:"Data", :"Proc", :"Mogno_Del", :Grypa_Macter_ID)  
Grypa_Macter_ID - ключ мастера
В детале прописал ДатаСаурс,для таблички создал внешний ключ(внешний ключ создаеться ж для детайл таблицы?)
Заранее благодарен

Всего записей: 2120 | Зарегистр. 09-04-2003 | Отправлено: 09:50 18-11-2008
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SilverDragonKLS
А что тут непонятного? Форма, на ней 20 штук Едитов. Потом для АДОКвери надо составить строку. Получится так (в моём случае):

Код:
 
tmpQ->DisableControls();
tmpQ->SQL->Clear();
tmpQ->SQL->Add( s );
tmpQ->Open();
где s - составная строка
 

А составная строка делается

Код:
 
s = "exec w_adr " + tmpID + ",'"  +
      Form5->lYl->Text  + "','" +
      Form5->lYlp->Text + "','" +
      Form5->lDom->Text + "','" +
      Form5->lKor->Text + "','" +
      Form5->lKv->Text  + "'";
 

Когда новая запись, то всё нормально. А когда редактируешь, то некоторые поля могут и не зменится. Тогда только

Код:
 
s = "exec w_adr " + tmpID;
if( Form5->lYl->Modified )
  s = s + ",'"  +Form5->lYl->Text  +
  ...
  для каждого контрола
 

Вопрос - есть что то попроще?
СПАСИБО!

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 09:52 18-11-2008
mirfut



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
 
Я думаю попроще нет, я бы сделал так (правда на Дельфи я пишу)
 
сделал функцию iif (взято у Access ) и написал составную строку
 
strSQL := iif(Edit1.Text<>'',Edit1.Text+',','')+iif(Edit2.Text<>'',Edit2.Text+',','')......

Всего записей: 82 | Зарегистр. 14-12-2005 | Отправлено: 11:06 18-11-2008
SilverDragonKLS

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
 
Насколько я могу понять, происходит вызов хранимой процедуры, которая уже и записывает данные в БД.
 
Вариант 1. Пишется 2 хранимые процедуры:
  1. Добавление данных
  2. Обновление даных (в которую будет передаваться весь список параметров, а уже анализ на измененность данных производится в хранимой процедуре).
 
Вариант 2 (напишу пример на Delphi, в C не очень силен)
Для этого:
  1. Параметры процедуры должны именоваться как @Param1,  @Param2, ...
  2. У каждого контрола должен быть выставлено свойство Tag равное номеру параметра в процедуре
 

Код:
 
s := 'exec w_adr ' + tmpID;
for I := 0 to Form5.ComponentCount do
  if (Form5.Components[I] is TEdit) and TEdit(Form5.Components[I]).Tag > 0 and TEdit(Form5.Components[I]).Modified then
    s := s + ', @Param' + IntToStr(TEdit(Form5.Components[I]).Tag) + '='''  +TEdit(Form5.Components[I]).Text + '''';
 

 
Вариант 3 подобен варианту 2, но имена параметров процедуры запихиваются, например, в HelpKeyword контрола
 
Точнее без заголовка хранимой процедуры сказать не могу.

Всего записей: 128 | Зарегистр. 09-03-2004 | Отправлено: 11:19 18-11-2008 | Исправлено: SilverDragonKLS, 11:22 18-11-2008
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mirfut
Есть такая функция в С++ , но толко это ты проверяешь на пустоту. А на модификацию?

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 11:22 18-11-2008
SilverDragonKLS

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
 
И еще вопрос: как при непостоянном количестве параметров хранимая процедура поймет, что же за данные ей пихаются в качастве параметров.
 
Если изменился только номер дома "Form5->lDom->Text", то если подставить его вторым, то куда он запишется?!
Я думаю, что вместо "Form5->lYl->Text"

Всего записей: 128 | Зарегистр. 09-03-2004 | Отправлено: 11:26 18-11-2008 | Исправлено: SilverDragonKLS, 11:27 18-11-2008
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SilverDragonKLS
1. У меня одна функция на все случаи жизни

Код:
 
bool __fastcall TForm1::DataSQL( String s, TADOQuery* tmpQ, int i )
{
 try
 {
    tmpQ->DisableControls();
    tmpQ->SQL->Clear();
    tmpQ->SQL->Add( s );
    if ( i == 0 )
    { // ничего не возвращаем
        tmpQ->ExecSQL();
    }
    else
    {
        tmpQ->Open();
    }
    Application->ProcessMessages();
 }
 catch(Exception &exception)
 {
        Application->ShowException(&exception);
        return false;
 }
 tmpQ->EnableControls();
 return true;
}
 

В строке s я передаю сформированную строку.
Проверять в хранимой процедуре на сервере - это интересно. Как?
 
По второму варианту - зачем трогать Tag, если есть модифиед? Там уже есть данные о том, что переменная поменялась.

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 11:32 18-11-2008
gena1959

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, у меня в TMS Instrumentation Workshop 1.4.5 очень слабый help. Это во всех версиях или есть и получше?

Всего записей: 24 | Зарегистр. 17-04-2006 | Отправлено: 11:47 18-11-2008
SilverDragonKLS

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
 
А что делает вызываемая хранимая процедура (в Вашем примере w_adr)?
 
TForm1::DataSQL просто производит выполнение SQL без возврата или с возвратом данных

Всего записей: 128 | Зарегистр. 09-03-2004 | Отправлено: 12:23 18-11-2008
StalkerSoftware



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dzh2000

Цитата:
Коллеги, кто-нибудь в курсе, что случилось с Дмитрием Большаковым, автором EhLib? Надеюсь, жив-здоров.

Тут трудно что сказать определенное.
Раньше я довольно плотно общался с Дмитрием по ICQ, но уже около полу-года он перестал появляться в ICQ.  
Мыло его уже не рабочее (получаешь отлуп от его mail-сервера), в своей конфе он тоже не появляется.
Хотя сайт его еще живой.  
 
Думаю с ним все же что то случилось, иначе бы он наверняка нашел возможность черкнуть хотя бы пару строк на своем сайте, если бы просто решил бросить EhLib. ;(

Всего записей: 682 | Зарегистр. 23-06-2008 | Отправлено: 15:17 18-11-2008
mirfut



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121

Цитата:
Есть такая функция в С++ , но толко это ты проверяешь на пустоту. А на модификацию?

 
А как модификация влияет на результирующую строку запроса ?
 
Пример:
1. Edit1 - номер дома
2. Edit2 - номер улицы
3. Edit3 - номер города
 
По твоим словам, типа, меняем Edit2, и только это заносится в запрос ? А остальное, оно было ли, не было заполнено, "по-барабану", если не пустое - заносится в запрос, пустое - пропуск.

Всего записей: 82 | Зарегистр. 14-12-2005 | Отправлено: 09:54 19-11-2008
dzh2000



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
StalkerSoftware

Цитата:
Думаю с ним все же что то случилось, иначе бы он наверняка нашел возможность черкнуть хотя бы пару строк на своем сайте, если бы просто решил бросить EhLib. ;(

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

Всего записей: 1576 | Зарегистр. 18-01-2002 | Отправлено: 11:21 19-11-2008
oan42



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gena1959
Help TMS Instrumentation Workshop занимает 500 кб.
Должен быть еще TMS Instrumentation Workshop Developers guide,
но сам не встречал.

Всего записей: 488 | Зарегистр. 03-08-2004 | Отправлено: 12:52 19-11-2008
Ape

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Никто не встречал такой ошибки при установке TMS Component Pack:
Cannot load 'tmsc6.' It contains unit 'Advstyleif,'which is also contained in package 'tmsexc6'
Возникает она при попытке установить модуль tmsdec6.bpl из этого пакета.
Без этого модуля многие свойства компонентов недоступны. В чём может быть проблема?
Версия TMSC 4.9

Всего записей: 81 | Зарегистр. 06-02-2003 | Отправлено: 20:45 21-11-2008
xokc

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ape
Почистить ранее установленные пакеты. В том числе из папок system32.

Всего записей: 477 | Зарегистр. 22-09-2002 | Отправлено: 22:48 23-11-2008
Deeptown12

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ подскажите компонент реализующий сокеты, ICS не совсем удобен

Всего записей: 246 | Зарегистр. 22-03-2004 | Отправлено: 11:51 24-11-2008
xokc

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Deeptown12
Ararat Synapse hxxp://synapse.ararat.cz/doku.php

Всего записей: 477 | Зарегистр. 22-09-2002 | Отправлено: 20:00 24-11-2008
Deeptown12

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
xokc
спасибо, гляну

Всего записей: 246 | Зарегистр. 22-03-2004 | Отправлено: 07:55 25-11-2008
vav79



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
помогите плиз.....
все здесь... http://forum.ru-board.com/topic.cgi?forum=33&topic=9944#1
вознагр. гарантирую. в разумных пределах  

Всего записей: 78 | Зарегистр. 19-01-2007 | Отправлено: 19:23 26-11-2008
defined

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос по TiPlot из IOComp: добавил две оси YAxis на график. Как можно разрисовать сетку графика (grid lines, линии для major-minor "тиков") чтобы у каждой оси (отдельно для YAxis[0] и отдельно для YAxis[1]) был свой цвет grid lines ?

Всего записей: 497 | Зарегистр. 04-09-2004 | Отправлено: 16:43 30-11-2008
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по компонентам для Delphi, C++ Builder разных версий
ShIvADeSt (26-06-2017 02:39): Продолжение тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=14667


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru