сначала формируется список команд на отправку, потом отправляются все эти команды как консольные 
 только для терминалов M2M Cyber GLX (GX) 
 Команды для терминалов 1.5 
 прошивки 4.01 или выше. 
 Смысл скрипта - опросить все параметры, перед прошивкой, и после прошивки, сравнить возвраты 
 Code
 
 declare @t table (com nvarchar(100)) 
 insert into @t values ('server?'); 
 insert into @t values ('@VERSION?'); 
 insert into @t values ('@RCV BOARD?'); 
 insert into @t values ('RCV ATTEMPTS?'); 
 insert into @t values ('SATELLITE SYSTEM?'); 
 insert into @t values ('U BATTERY?'); 
 insert into @t values ('VALID ZONE?'); 
 insert into @t values ('COMMAND ATTEMPTS?'); 
 insert into @t values ('MIC LEVEL?'); 
 insert into @t values ('SPK LEVEL?'); 
 insert into @t values ('PDP?'); 
 insert into @t values ('LOGIN?'); 
 insert into @t values ('PASSWORD?'); 
 insert into @t values ('CHECK INT?'); 
 insert into @t values ('COMMUNICATION INTERVAL?'); 
 insert into @t values ('ROAMING ATTEMPTS?'); 
 insert into @t values ('COMMUNICANION MODE?'); 
 insert into @t values ('PRIORITY NETWORK?'); 
 insert into @t values ('FORBIDDEN NETWORK?'); 
 insert into @t values ('CONNECT ATTEMPTS?'); 
 insert into @t values ('PACKET QUEUE?'); 
 insert into @t values ('CMD NUMBER?'); 
 --insert into @t values ('UART MODE?'); 
 insert into @t values ('UART SPEED?'); 
 insert into @t values ('UART WORD?'); 
 insert into @t values ('UART STOP?'); 
 insert into @t values ('UART PARITY?'); 
 insert into @t values ('UART FLOW?'); 
 insert into @t values ('UART XON?'); 
 insert into @t values ('UART XOFF?'); 
 insert into @t values ('UART USE?'); 
 insert into @t values ('INV INP?'); 
 insert into @t values ('PPR NUMBER?'); 
 insert into @t values ('PULSEACC TIME?'); 
 insert into @t values ('RPM THLD?'); 
 insert into @t values ('DINP THLD?'); 
 insert into @t values ('INP ARRAY?'); 
 insert into @t values ('DIO RELATION?'); 
 insert into @t values ('RING DOUT?'); 
 insert into @t values ('AUDIO DOUT?'); 
 insert into @t values ('AINP CFG?'); 
 insert into @t values ('AINP USE?'); 
 insert into @t values ('AINP THLD?'); 
 insert into @t values ('IGNITION INP?'); 
 insert into @t values ('ZERO SPEED?'); 
 insert into @t values ('PARK TIME INT?'); 
 insert into @t values ('START MOTION?'); 
 insert into @t values ('RUN INT?'); 
 insert into @t values ('PARK INT?'); 
 insert into @t values ('DIST THLD?'); 
 insert into @t values ('COURSE THLD?'); 
 insert into @t values ('MAX SPEED?'); 
 insert into @t values ('TRAVEL DIST?'); 
 insert into @t values ('HDOP?'); 
 insert into @t values ('VDOP?'); 
 insert into @t values ('PACKET TOUT?'); 
 insert into @t values ('TREMBLE INP?'); 
 insert into @t values ('DOUT PULSE?'); 
 insert into @t values ('LLSAVER TIME?'); 
 insert into @t values ('LLS TYPE?'); 
 insert into @t values ('LLSSTART DELAY?'); 
 insert into @t values ('LLSFINISH DELAY?'); 
 insert into @t values ('MEASURSTART INP?'); 
 insert into @t values ('MEASURSTART DELAY?'); 
 insert into @t values ('REFERENCE INP?'); 
 insert into @t values ('NORMALIZE INP?'); 
 insert into @t values ('AINPAVER TIME?'); 
 insert into @t values ('AINPDATA INT?'); 
 insert into @t values ('ROAMING COURSE?'); 
 insert into @t values ('AVIALABLE NETWORK?'); 
 insert into @t values ('LOW POWER PROTECT?'); 
 insert into @t values ('TRUE POSITION?'); 
 insert into @t values ('MERGE ARCPACKETS?'); 
 insert into @t values ('SUSPEND SERVICE?'); 
 insert into @t values ('2D ENABLE?'); 
 insert into @t values ('LLS ADDRESS?'); 
 declare @UserID int, @device_code varchar(16) 
 set @device_code='00163013' 
 set @UserID=(select id from bn.dbo.sys_Users where name='Админ'); -- получим ид пользователя с указанным именем     
 if (@UserID) is null begin print ('Пользователь не найден!') return end;-- провка на пользователя, что он есть     
 insert into bn.dbo.FLEET_OutCome (UserID,dev_code,[CommandTemplID],Command,State,objectid) 
 select @UserID,d.code,com.CmmandID,'23|'+rtrim(ltrim(oc.com))+'|',0,o.ObjectID     
 from @t as OC 
 inner join bn.dbo.SYS_DEV_Device as d on d.code=@device_code and d.DeviceActive=1     
 inner join bn.dbo.FLEET_Object as o on o.device_id=d.id 
 inner join bn.dbo.FLEET_Command as com on com.Device_id=d.id and com.CommandCode=10 
 where o.ObjectActive=1 
 
 где: set @device_code='00163013' -- номер прибора для отправки команды 
 set @UserID=(select id from bn.dbo.sys_Users where name='Админ'); -- получим ид пользователя с указанным именем  Админ 
 Опрос всех данных для работы скрипта сравнения