313 lines
13 KiB
C#
313 lines
13 KiB
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Text;
|
|||
|
using ICommLayer;
|
|||
|
using DBFactory;
|
|||
|
using System.Data;
|
|||
|
using Microsoft.VisualBasic;
|
|||
|
namespace SimensProdave6
|
|||
|
{
|
|||
|
public class CSendDeviceOrder:ISendDeviceOrder
|
|||
|
{
|
|||
|
string _commLayerError;
|
|||
|
|
|||
|
public string CommLayerError
|
|||
|
{
|
|||
|
get { return _commLayerError; }
|
|||
|
set { _commLayerError = value; }
|
|||
|
}
|
|||
|
DBOperator dbo = CSimensProdave6_S7.dbo;
|
|||
|
public CSendDeviceOrder()
|
|||
|
{
|
|||
|
dbo.Open();
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// <20><><EFBFBD>ͶѶ<CDB6><D1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
/// </summary>
|
|||
|
/// <param name="MessageIndex"><3E><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="TaskIndex"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="Order"><3E>Ѷ<EFBFBD><D1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
///1-<2D><>λ
|
|||
|
///2-<2D><>ȡ
|
|||
|
///3-<2D><><EFBFBD><EFBFBD>
|
|||
|
///4-ȡ<><C8A1>
|
|||
|
///5-<2D>Ż<EFBFBD>
|
|||
|
///6-ȡ<>Ż<EFBFBD>
|
|||
|
/// <param name="DeviceIndex"><3E>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="StartX"><3E><>ʼx<CABC><78><EFBFBD>꣬<EFBFBD><EAA3AC>-<2D>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="StartY"><3E><>ʼy<CABC><79><EFBFBD>꣬<EFBFBD><EAA3AC>-<2D>߶ȷ<DFB6><C8B7><EFBFBD></param>
|
|||
|
/// <param name="StartZ"><3E><>ʼz<CABC><7A><EFBFBD>꣬<EFBFBD><EAA3AC>-<2D><><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD><D1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬1-<2D><><EFBFBD>࣬2-<2D>Ҳ<EFBFBD></param>
|
|||
|
/// <param name="EndX">Ŀ<><C4BF>x<EFBFBD><78><EFBFBD>꣬<EFBFBD><EAA3AC>-<2D>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="EndY">Ŀ<><C4BF>y<EFBFBD><79><EFBFBD>꣬<EFBFBD><EAA3AC>-<2D>߶ȷ<DFB6><C8B7><EFBFBD></param>
|
|||
|
/// <param name="EndZ">Ŀ<><C4BF>z<EFBFBD><7A><EFBFBD>꣬<EFBFBD><EAA3AC>-<2D><><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD><D1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬1-<2D><><EFBFBD>࣬2-<2D>Ҳ<EFBFBD></param>
|
|||
|
/// <returns><3E><><EFBFBD>ͶѶ<CDB6><D1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>ɹ<EFBFBD></returns>
|
|||
|
public bool SendDeviceOrder(int MessageIndex, int TaskIndex, int Order, int DeviceIndex, int StartX, int StartY, int StartZ, int EndX, int EndY, int EndZ)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
int sn = 0;
|
|||
|
Model.MDevice devinfo = Model.CGetInfo.GetDeviceInfo(DeviceIndex);
|
|||
|
//DataView dv = dbo.ExceSQL("SELECT F_DBW1Address,F_DBWSendLength,F_DeviceIndex,F_DeviceKindIndex,F_OPCProgID, F_RemoteIP FROM T_Base_Device where F_DeviceIndex=" + DeviceIndex).Tables[0].DefaultView;
|
|||
|
if (devinfo.DeviceIndex == 0)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>û<EFBFBD>ҵ<EFBFBD><D2B5>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
|
|||
|
return false;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if ((devinfo.DeviceKind.ToString() != "1") )
|
|||
|
{//<2F>Ѷ<EFBFBD><D1B6><EFBFBD>ʹ<EFBFBD>ô˷<C3B4><CBB7><EFBFBD>
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<F3A3BAB6><D1B6><EFBFBD><EFBFBD><EFBFBD>RGV<47><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ʹ<E8B1B8>ô˷<C3B4><CBB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ!";
|
|||
|
return false;
|
|||
|
}
|
|||
|
#region <EFBFBD>Ѷ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
if (devinfo.DeviceKind.ToString() == "1")
|
|||
|
{
|
|||
|
byte[] wdata = new byte[10];
|
|||
|
sn = Convert.ToInt32(devinfo.Dbw1Address);
|
|||
|
wdata[0] =(byte) MessageIndex;
|
|||
|
wdata[1] = (byte)Order;
|
|||
|
wdata[2] = (byte)(TaskIndex>>8);
|
|||
|
wdata[3] = (byte)(TaskIndex & 255);
|
|||
|
if (MessageIndex == 1)
|
|||
|
{
|
|||
|
wdata[4] = (byte)(StartX + 1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
wdata[4] = (byte)StartX;
|
|||
|
}
|
|||
|
wdata[5] = (byte)StartY;
|
|||
|
wdata[6] = (byte)StartZ;
|
|||
|
if (MessageIndex == 1)
|
|||
|
{
|
|||
|
wdata[7] = (byte)(EndX + 1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
wdata[7] = (byte)EndX;
|
|||
|
}
|
|||
|
//wdata[7] = (byte)EndX;
|
|||
|
wdata[8] = (byte)EndY;
|
|||
|
wdata[9] = (byte)EndZ;
|
|||
|
if (CSimensProdave6_S7.DB_Write_Prodave(0, 1, Convert.ToUInt16(sn), Convert.ToUInt32(devinfo.Dbw1SendLength), wdata) == false)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" + CSimensProdave6_S7.ErrorsText;
|
|||
|
return false;
|
|||
|
}
|
|||
|
if (WriteBarcode(DeviceIndex, TaskIndex) == false)
|
|||
|
{
|
|||
|
return false;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
}
|
|||
|
return true;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" + ex.Message;
|
|||
|
return false;
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// <20><><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD><F3B3B5A1><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
|||
|
/// </summary>
|
|||
|
/// <param name="MessageIndex"><3E><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="TaskIndex"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="Order"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>
|
|||
|
///1-<2D><>λ
|
|||
|
///2-<2D><><EFBFBD>ӻ<EFBFBD>
|
|||
|
///3-<2D><><EFBFBD>ͻ<EFBFBD>
|
|||
|
///4-<2D>ҽӻ<D2BD>
|
|||
|
///5-<2D><><EFBFBD>ͻ<EFBFBD>
|
|||
|
///6-ֹͣ
|
|||
|
///7-<2D>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><34>5<EFBFBD>ֽ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
///<2F><><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD>
|
|||
|
///1-<2D><><EFBFBD>⣨<EFBFBD><E2A3A8><EFBFBD><EFBFBD><EFBFBD>⣩
|
|||
|
///2-<2D><><EFBFBD>⣨<EFBFBD><E2A3A8><EFBFBD><EFBFBD><EFBFBD>⣩
|
|||
|
///3-<2D>ͻ<EFBFBD>
|
|||
|
///4-<2D>ӻ<EFBFBD>
|
|||
|
///5-ֹͣ
|
|||
|
/// <param name="DeviceIndex"><3E>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD></param>
|
|||
|
///<param name="ArrowDeviceIndex"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3B3B5B4><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
/// 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>65535<33><35><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <returns><3E><><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD><F3B3B5A1><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>ɹ<EFBFBD></returns>
|
|||
|
public bool SendDeviceOrder(int MessageIndex, int TaskIndex, int Order, int DeviceIndex, int ArrowDeviceIndex)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
string[] itemnames = new string[4];
|
|||
|
string[] itemvalues = new string[4];
|
|||
|
int sn = 0;
|
|||
|
Model.MDevice devinfo = Model.CGetInfo.GetDeviceInfo(DeviceIndex);
|
|||
|
//DataView dv = dbo.ExceSQL("SELECT F_DBW1Address,F_DBWSendLength,F_DeviceIndex,F_DeviceKindIndex,F_OPCProgID, F_RemoteIP FROM T_Base_Device where F_DeviceIndex=" + DeviceIndex).Tables[0].DefaultView;
|
|||
|
if (devinfo.DeviceIndex == 0)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!";
|
|||
|
return false;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (devinfo.DeviceKind.ToString() == "7")
|
|||
|
{
|
|||
|
return true;
|
|||
|
}
|
|||
|
if ((devinfo.DeviceKind.ToString() == "1") )
|
|||
|
{//<2F>Ѷ<EFBFBD><D1B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ô˷<C3B4><CBB7><EFBFBD>
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<F3A3BAB6><D1B6><EFBFBD><EFBFBD><EFBFBD>RGV<47><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ô˷<C3B4><CBB7><EFBFBD>!";
|
|||
|
return false;
|
|||
|
}
|
|||
|
byte[] wdata = new byte[6];
|
|||
|
sn = Convert.ToInt32(devinfo.Dbw1Address);
|
|||
|
wdata[0] = (byte)MessageIndex;
|
|||
|
wdata[1] = (byte)Order;
|
|||
|
wdata[2] = (byte)(TaskIndex >> 8);
|
|||
|
wdata[3] = (byte)(TaskIndex & 255);
|
|||
|
wdata[4] = (byte)(ArrowDeviceIndex >> 8);
|
|||
|
wdata[5] = (byte)(ArrowDeviceIndex & 255);
|
|||
|
if (CSimensProdave6_S7.DB_Write_Prodave(0, 1, Convert.ToUInt16(sn), Convert.ToUInt32(devinfo.Dbw1SendLength), wdata) == false)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" + CSimensProdave6_S7.ErrorsText;
|
|||
|
return false;
|
|||
|
}
|
|||
|
byte[] www = new byte[6];
|
|||
|
Array.Copy(wdata, www, 6);
|
|||
|
CommonClassLib.CCarryConvert.WriteDarkCasket("SimensProdave6", "SendDeviceOrder", DeviceIndex.ToString(), www);
|
|||
|
if (WriteBarcode(DeviceIndex, TaskIndex) == false)
|
|||
|
{
|
|||
|
return false;
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
return true;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" + ex.Message;
|
|||
|
return false;
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// <20><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䰴Ʒ<E4B0B4><C6B7><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ϣ<EFBFBD><CFA2>15<31>ֽ<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱд<CAB1><D0B4>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB>д<EFBFBD><D0B4>
|
|||
|
/// </summary>
|
|||
|
/// <param name="DeviceIndex"><3E><><EFBFBD><EFBFBD>λ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="TobaccoCode"><3E><>1--13<31>ֽ<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="HaveFirstProjectCode"><3E><>14<31>ֽ<EFBFBD>,1-<2D><>һ<EFBFBD>Ź<EFBFBD><C5B9><EFBFBD><EFBFBD><EFBFBD>,0-<2D><>һ<EFBFBD>Ź<EFBFBD><C5B9><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="IfSmallTobacco"><3E><>15<31>ֽ<EFBFBD>,1-С<><D0A1><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <returns><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䰴Ʒ<E4B0B4><C6B7><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ϣ<EFBFBD>Ƿ<EFBFBD><C7B7>ɹ<EFBFBD></returns>
|
|||
|
public bool SendDeviceOrder(int DeviceIndex, string TobaccoCode, bool HaveFirstProjectCode, bool IfSmallTobacco,int Count)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
byte[] wdata = new byte[15];
|
|||
|
Model.MDevice devinfo = Model.CGetInfo.GetDeviceInfo(DeviceIndex);
|
|||
|
//DataView dv = dbo.ExceSQL("SELECT F_DBW1Address,F_DBWSendLength,F_DeviceIndex,F_DeviceKindIndex,F_OPCProgID, F_RemoteIP FROM T_Base_Device where F_DeviceIndex=" + DeviceIndex).Tables[0].DefaultView;
|
|||
|
if (devinfo.DeviceIndex == 0)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!";
|
|||
|
return false;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
for (int i = 0; i < 13; i++)
|
|||
|
{
|
|||
|
wdata[i]=(byte)Strings.Asc(TobaccoCode.Substring(i,1));
|
|||
|
}
|
|||
|
|
|||
|
if (HaveFirstProjectCode == true)
|
|||
|
{
|
|||
|
wdata[13] = 1;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
wdata[13] = 0;
|
|||
|
}
|
|||
|
if (IfSmallTobacco == true)
|
|||
|
{
|
|||
|
wdata[14] = 1;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
wdata[14] = 1;
|
|||
|
}
|
|||
|
|
|||
|
if (CSimensProdave6_S7.DB_Write_Prodave(0, 1, Convert.ToUInt16(devinfo.Dbw1Address), Convert.ToUInt32(devinfo.Dbw1SendLength), wdata) == false)
|
|||
|
{
|
|||
|
return false;
|
|||
|
}
|
|||
|
}
|
|||
|
return true;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" + ex.Message;
|
|||
|
return false;
|
|||
|
}
|
|||
|
}
|
|||
|
bool WriteBarcode(int deviceindex,int taskindex)
|
|||
|
{
|
|||
|
string barcode="";
|
|||
|
byte[] wdata = new byte[11];
|
|||
|
DataView dvb = dbo.ExceSQL("SELECT F_MonitorIndex, F_TxtParam FROM T_Monitor_Task WHERE (F_MonitorIndex = "+taskindex +")").Tables[0].DefaultView;
|
|||
|
if (dvb.Count > 0)
|
|||
|
{
|
|||
|
barcode = dvb[0]["F_TxtParam"].ToString();
|
|||
|
if (barcode == "-") return true;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>븽<EFBFBD><EBB8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD>!";
|
|||
|
return false;
|
|||
|
}
|
|||
|
Model.MDevice devinfo = Model.CGetInfo.GetDeviceInfo(deviceindex);
|
|||
|
|
|||
|
//DataView dv0 = dbo.ExceSQL("SELECT F_AppendBarcode, F_DeviceIndex FROM T_Base_Device WHERE (F_AppendBarcode <>-1) AND (F_DeviceIndex = "+deviceindex +")").Tables[0].DefaultView;
|
|||
|
if (devinfo.AppendBarcode > 0)
|
|||
|
{
|
|||
|
Model.MDevice devinfo1 = Model.CGetInfo.GetDeviceInfo(devinfo.AppendBarcode);
|
|||
|
//DataView dv = dbo.ExceSQL("SELECT F_DBW1Address,F_DBWSendLength,F_DeviceIndex,F_DeviceKindIndex,F_OPCProgID, F_RemoteIP FROM T_Base_Device where F_DeviceIndex=" + Convert.ToInt32(dv0[0]["F_AppendBarcode"])).Tables[0].DefaultView;
|
|||
|
if (devinfo1.DeviceIndex == 0)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>븽<EFBFBD><EBB8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!";
|
|||
|
return false;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
wdata[0] = 1;
|
|||
|
for (int i = 1; i <= barcode.Length; i++)
|
|||
|
{
|
|||
|
wdata[i] =(byte) Strings.Asc(barcode.Substring(i-1, 1));
|
|||
|
}
|
|||
|
if (CSimensProdave6_S7.DB_Write_Prodave(0, 1, Convert.ToUInt16(devinfo1.Dbw1Address), Convert.ToUInt32(devinfo1.Dbw1SendLength), wdata) == false)
|
|||
|
{
|
|||
|
_commLayerError = "SimensProdave6.CSendDeviceOrder.SendDeviceOrder<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>븽<EFBFBD><EBB8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!";
|
|||
|
return false;
|
|||
|
}
|
|||
|
}
|
|||
|
return true;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
return true; ;
|
|||
|
}
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// <20><>PLC<4C><43>DB<44><42>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
/// </summary>
|
|||
|
/// <param name="ItemNames"><3E><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <param name="ItemValues"><3E><>ǩֵ<C7A9><D6B5><EFBFBD><EFBFBD></param>
|
|||
|
/// <returns></returns>
|
|||
|
public bool WriteDBData(string[] ItemNames, string[] ItemValues)
|
|||
|
{
|
|||
|
return true;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|