MDB에서 ZONE들의 이름을 읽어 와서 파일로 저장하는 함수를 만들어 봤습니다. 함수의 내용은 간단합니다. Define Function !!GetZoneList(!path Is String) !cur = ref world var !tzone collect all zone q var !tzone !pathName = !path + '\ZoneList.dat' !!totalF = Object FILE('$!pathName') !!totalF.Open('overwrite') DO !c Index !tzone $!tzone[$!c] var !name name !!totalF.WriteRecord('$!name') ENDDO !!totalF.Close() !!totalF.Delete() $p ================ $P completed $p ================ $!cur EndFunction 인자로 파일이 생길 폴더 이름을 받습니다. 현재의 레벨을 저장한후에 WORLD 레벨로 올라갑니다. 거기서 zone들을 collect합니다. 여기서 for ce 를 붙이니까 제대로 zone들을 끌어 모으지 못했습니다. 그 자세한 이유는 모르겠고 그냥 for ce를 뺐습니다. 그리고 마지막에 저장한 레벨로 되돌려 놓습니다. 덤으로 define function !!dofgetgridwl(!path Is String) !cur = ref world var !cgridwl collect all GRIDWLD q var !cgridwl if !cgridwl.size() ge 1 Then !pathName = '/' + !path + '\GridWL.mac' $!cgridwl[1] file $!pathNam...