cpu13.ru - форум OMRON http://cpu13.ru/ |
|
сопоставление баз данных http://cpu13.ru/viewtopic.php?f=3&t=4025 |
Страница 1 из 1 |
Автор: | gren8i4 [ Ср сен 22, 2021 08:29 ] |
Заголовок сообщения: | сопоставление баз данных |
Всех приветствую. Подскажите, сталкивался ли кто нибудь с такой задачей: со сканера штрих кодов приходит номер детали в контроллер, из контроллера через супервизор складываю эти номера в БД и нужно что б по базе данных не было повтора номера, другими словами нужно сравнить БД с приходящим на текущий момент номером. Возможно ли это осуществить в супервизоре? |
Автор: | Олег [ Ср сен 22, 2021 10:31 ] |
Заголовок сообщения: | Re: сопоставление баз данных |
Как вариант, сделать столбец с номером детали уникальным, чтобы при добавлении записи получить ошибку. Можно и поиск по таблице предварительно сделать return = DBExecute("Connection1.Recordset1", "Find", "столбец_с_номером = 'номер_детали'") |
Автор: | gren8i4 [ Ср сен 22, 2021 14:08 ] |
Заголовок сообщения: | Re: сопоставление баз данных |
Спасибо, вроде то что нужно. Но что-то я совсем не понимаю синтаксиса этого скрипта, выдаёт ошибку. 'номер_детали' - это же текстовая точка в которую я записываю код со сканера столбец_с_номером - это столбец который я выбираю в Field, впрочем я и номер пробовал ставить всё равно ошибка синтаксиса. |
Автор: | Олег [ Ср сен 22, 2021 23:49 ] |
Заголовок сообщения: | Re: сопоставление баз данных |
Код: столбец_с_номером = 'номер_детали' это текст запроса, т.е. его нужно заранее склеить в текстовой точке из текста Код: столбец_с_номером = ' + переменная с номером детали, и в конце добавить Код: ' я использовал эту функцию вместе с "Filter" т.е. выборка по дате Код: txtFilt3="дата = '"+txtFilt2+"'" DBExecute( "fiskal.Read", "Filter", txtFilt3 ) InitArray(txt1,"") InitArray(txt2,"") InitArray(txt3,"") DBRead( "fiskal.Read" ) DBExecute( "fiskal.Read", "Requery" ) nRec_f=DBProperty( "fiskal.Read", "RecordCount" ) nCurrentRec_f =nRec_f-14 DBMove( "fiskal.Read", "Position", nCurrentRec_f ) DBRead( "fiskal.Read" ) nCurrentRec_f = DBProperty( "fiskal.Read", "CurrentRecord" ) дата это столбец в таблице. Выборка по тексту события в столбце "событие" Код: txtFilt1="событие Like '"+"*"+txtFilt+"*"+"'" DBExecute( "fiskal.Read", "Filter", txtFilt1 ) InitArray(txt1,"") InitArray(txt2,"") InitArray(txt3,"") DBRead( "fiskal.Read" ) DBExecute( "fiskal.Read", "Requery" ) nRec_f=DBProperty( "fiskal.Read", "RecordCount" ) nCurrentRec_f =nRec_f-14 DBMove( "fiskal.Read", "Position", nCurrentRec_f ) DBRead( "fiskal.Read" ) nCurrentRec_f = DBProperty( "fiskal.Read", "CurrentRecord" ) На чтение и запись в одну и ту же таблицу я создавал разные рекордсеты. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа (Russia: MSK) |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |