±ÍÇÏ´Â ¼Õ´Ô À̽ʴϴÙ
·Î±×ÀÎ
ȸ¿ø°¡ÀÔ
  
  µ¨¸¶´ç °ø½Ä ÀºÇà°èÁÂ
  ÇϳªÀºÇà 227-910235-83607
  ¿¹±ÝÁÖ ÀÌ»ó±¹(¿î¿µÁø)
ÇÁ·ÎÁ§Æ® °Ô½ÃÆÇ
ÅõÇ¥°Ô½ÃÆÇ
µ¨¸¶´ç¼Ò°³
±âÃʺÎÅÍ È°¿ë±îÁö! µ¨ÆÄÀÌ ±³À° - µ¥ºê±â¾î
Áú¹®°ú ´äº¯ Áú¹®°ú ´äº¯ ÀÔ´Ï´Ù.
±Û³»¿ë - Áú¹®°ú ´äº¯
 [Áú¹®] DataSnap ¿¡¼­ ¸®ÅÏŸÀÔÀÌ TObjectÀΠ¼­¹ö¸Þ¼­µå¸¦ µÎ¹ø È£ÃâÇϸé access voilation ¿À·ù ³ª´Âµ¥ È¤½Ã ¾Æ½Ã´ÂºÐ~
ª±½
(±èÁø±¹)
2018-04-19 ¿ÀÈÄ 2:57:17
622ȸ Á¶È¸


µî·ÏµÈ ÆÄÀÏÀÌ ¾ø½À´Ï´Ù.
1. °³¹ß/½ÇÇà Ç÷§Æû 
  (1) OS : 
  (2) °³¹ßÅø : 
  (3) »ç¿ë Database : 

2. °³¹ß ÁßÀΠÇÁ·Î±×·¥ 

3. Áú¹® ³»¿ë 

procedure Tf_OutProduct.proc_InitOutProduct(WON_CODE: Integer; WON_MODE: TCISEditorMode);
var
  vobj1,vobj2: TJSONObject;
begin
  proc_ClearEditor;

  vobj1 := smc.smfunc_GetDataObject('T_WONJANG','WON_CODE;',VarArrayOf([WON_CODE]),'',NULL);
  if not Assigned(vobj1) then raise Exception.Create('error');

  ShowMessage(vobj1.ToString);//<-- ¿©±â´Â Á¤»óÀ¸·Î Ãâ·ÂµË´Ï´Ù

  vobj2 := smc.smfunc_GetDataObject('T_GROUND','GRO_CODE;',VarArrayOf([100105]),'',NULL);

  ShowMessage(vobj1.ToString);//<--¿©±â access voilation ¿À·ù ³³´Ï´Ù

  if not Assigned(vobj2) then raise Exception.Create('error');
  ShowMessage(vobj2.GetValue('GRO_NAME').ToString);
end;

DataSnap ¿ø¸®»ó ¾î¿ ¼ö ¾ø´Â ºÎºÐÀÎÁö ¾Æ´Ï¸é È¤½Ã ¼öÁ¤°¡´ÉÇÑ ºÎºÐÀÎÁö ¸ô¶ó¼­ 

Áú¹®µå¸³´Ï´Ù

¼­¹öÂÊ¿¡ ¿ÀºêÁ§Æ®¸¦ ¸®ÅÏÇϴ ¸Þ¼­µå°¡ Àִµ¥

·ÎÄÿ¡¼­ Ã³À½ È£ÃâÇÏ¿© °´Ã¼ A¸¦ ¸®ÅϹްí Ãâ·ÂÇϸé Á¤»óÀ¸·Î Ãâ·ÂµÇ´Âµ¥

ÀÌ vobj1À» free ÇÏÁöµµ ¾Ê¾Ò´Âµ¥ 

¼­¹ö ¸Þ¼­µå¸¦ Çѹø ´õ È£ÃâÇÏ°í vobj1À» ¾×¼¼½º ÇÏ·ÁÇϸé violation ¿À·ù ³³´Ï´Ù 

¾î¶»°Ô µÇ´Â°ÇÁö ¾Æ½Ã´ÂºÐ °è½Ã¸é °¡¸£ÃÄÁÖ½Ã¸é °í¸¿°Ú½À´Ï´Ù~~

°¨»çÇÕ´Ï´Ù~