현재 마이다스(3tier)로 애플리케이션을 만들려고 합니다.
thin 클라이언트에서 애플리케이션 서버측으로 여러개의 파라미터를 전송할 때 애플리케이션 서버측에서는 받게되는 각각의 파라미터의 타입을 알 수 없으므로 OleVariant타입으로 받도록 했으며 클라이언트에서 보내는 각각의 파라미터는 배열로 보내게 되는데 각 상황에 따라서 배열의 갯수가 달라집니다.
이때 애플리케이션 서버측에서 받은 각 파라미터의 배열 갯수를 알아야 하는데 어떻게 해야하는지요...
각 파라미터 타입을 OleVariant로 하지 않고 받을 수 있는 다른 방법이 있을까요?
아래는 파라미터를 보내고 받는 소스의 일부입니다.
-- 클라이언트(송신)
DM.DataModule2.SocketConnection1.AppServer.MA101_Query
('MA101_1S', '', '', VarArrayOf([Edit1.Text,Edit2.text]));
-- 애플리케이션 서버(수신)
TKCErpRDM.MA101_Query(Menu, Field, Value, Condition: OleVariant);
다만 Variant type 의 배열 크기는
VarArrayHighBound(Variant 배열명, 1) 로 알수가 있습니다.
단, 그전에 VarIsArray(Variant 배열명) 으로 파라미터로 받은 Variant type 변수가 Varriant 배열인지 아닌지 부터 확인후 작업하셔야겠죠...