Ejemplo n.º 1
0
        // 콜백 함수 내에서 사용되어야 함
        internal static IList <T> GetMultiData <T>(this AxKHOpenAPI api) where T : EntityBase
        {
            var tAttri     = typeof(T).GetCustomAttribute <TransactionAttribute>(true);
            var properties = typeof(T).GetProperties(BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetProperty);
            var cnt        = api.GetRepeatCnt(tAttri.TRCode, tAttri.Name);
            var datacnt    = api.GetDataCount(tAttri.Name);
            var list       = new List <T>();

            for (int i = 0; i < cnt; i++)
            {
                Console.WriteLine("### Loop = " + i);
                var entity = Activator.CreateInstance <T>();
                foreach (var property in properties)
                {
                    var cAttri = property.GetCustomAttribute <OutputAttribute>(true);

                    if (cAttri == null)
                    {
                        continue;
                    }

                    var result = api.CommGetData(tAttri.TRCode, "", tAttri.Name, i, cAttri.Name).Trim();
                    property.SetValue(entity, result);
                    Console.WriteLine("{0},{1},{2},{3} : {4}", i, tAttri.TRCode, tAttri.Name, cAttri.Name, result);
                }
                list.Add(entity);
            }
            return(list);
        }
Ejemplo n.º 2
0
        /// <summary>
        ///[22]설명 레코드의 반복개수를 반환한다.
        ///입력값 strRecordName – 레코드명
        ///반환값 레코드 반복개수
        ///비고 Ex) openApi.GetDataCount(“주식기본정보”);
        /// </summary>
        public int GetDataCount(String strRecordName)
        {
            int ret = axKHOpenAPI.GetDataCount(strRecordName);

            FileLog.PrintF("GetDataCount(" + strRecordName + "):" + ret);
            return(ret);
        }
Ejemplo n.º 3
0
        internal static int GetCount <T>(this AxKHOpenAPI api) where T : EntityBase
        {
            var tAttri = typeof(T).GetCustomAttribute <TransactionAttribute>(true);

            Console.WriteLine("[tAttri.TRCode]" + tAttri.TRCode);
            Console.WriteLine("[tAttri.Name]" + tAttri.Name);
            var cnt = api.GetRepeatCnt(tAttri.TRCode, tAttri.Name);

            Console.WriteLine("[cnt]" + cnt);
            var datacnt = api.GetDataCount(tAttri.Name);

            return(datacnt);
        }