자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------

델파이 7  -> 도쿄로 마이그레이션 중입니다.

기존 ADO 쿼리에서 FD쿼리로 변환작업을 진행중인데, 

MapRule을 통해 BCD 필드를 integer, float 필드로 변환하였습니다.

헌데 일부 쿼리는 TBCDfield가 아닌 TFMTBCDfield로 로드가 되는데, 어떠한 경우에 fmtbcd필드로 로드가 되는것인가요?

또한 FMTbcd필드는 maprule의 정책이 적용이 되질 않습니다.

거기에 maprule은 FDConnection에만 적용해두면 해당 커넥션을 사용하는 FDquery에 모두 적용이 되는것인가요??

(현재 적용이 되질않나 fdquery component에 하나씩 maprule 생성.)

 

정리하자면, 

1. BCDfield와 FMTBCDfield의 차이점.(어떠한 경우에 FMTBCD로 로드되는지?)

 

2. FMTBCDfield에 Maprule 적용방법.

 

3. maprule은 FDConnection에만 적용해두면 해당 커넥션을 사용하는 FDquery에 모두 적용이 되는것인지?

 

4. maprule에서 widestringfield를 stringfield로 바꿀 수 있는지?

 

 

하기 테스트해본 소스입니다.

====================

  object FDConnection1: TFDConnection

    Params.Strings = (

      'DriverID=ora'

      'Database=***'

      'Password=****'

      'User_Name=****')

    FormatOptions.AssignedValues = [fvMapRules, fvDataSnapCompatibility]

    FormatOptions.OwnMapRules = True

    FormatOptions.MapRules = <

      item

        PrecMax = 10

        PrecMin = 0

        ScaleMax = 0

        SizeMin = 0

        SourceDataType = dtFmtBCD

        TargetDataType = dtInt32

      end>

    FormatOptions.DataSnapCompatibility = True

    Connected = True

    LoginPrompt = False

    Left = 360

    Top = 216

  end

  object FDQuery1: TFDQuery

    Connection = FDConnection1

    SQL.Strings = (

      'select 1 f1, 2.3 f2, 3.12345 f3'

      'from dual')

    Left = 440

    Top = 224

    object FDQuery1F1: TFMTBCDField

      FieldName = 'F1'

      Origin = 'F1'

      Precision = 32

      Size = 12

    end

    object FDQuery1F2: TFMTBCDField

      FieldName = 'F2'

      Origin = 'F2'

      Precision = 32

      Size = 12

    end

    object FDQuery1F3: TFMTBCDField

      FieldName = 'F3'

      Origin = 'F3'

      Precision = 32

      Size = 12

    end

  end

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 17235
공지 유용한 관련 사이트 관리자2 2014.03.20 56114
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 99551
1679 스마트폰에서 폼 종료 방법을 알려주세요. [1] 거북이 2015.11.03 365
1678 [질문] DataSnap과 Mobile 연결 [2] 오는새벽 2021.02.25 365
1677 DataSnap ClientDataSet 연결문의드립니다. [1] 블랙 2021.04.06 365
1676 문의 드립니다. [1] radio 2015.03.16 366
1675 시애틀 업데이트팩 1설치후 컴파일 불가 [2] KayKim 2017.04.05 366
1674 데이터스냅 콜백 오류 문의 [3] file 회원 2016.10.14 366
1673 델파이 10.1 - 안드로이드 서비스 개발시 'activity not found, maybe you are in a service' 에러 [3] 봄이아빠 2017.03.30 366
1672 XE8 OS 32bit에서는 FireDAC CreateDB가 잘 되는데 64bit로 빌더를 바꿔서 하면 에라가 발생? 바람돌이 2016.07.12 367
1671 아이폰/안드로이드 개발시 파일저장 [1] 권동한 2020.04.07 367
1670 Exception EFilerError in module rtl190.bpl at 000FF30F 에러가 납니다. 쭈니쿤 2016.01.15 367
1669 cap파일 배포시 인증 문제에 대한 자문을 요청드립니다. [1] 데브기어 2017.11.15 368
1668 Rio10.3.2 업그래이드 후 코드인사이트 먹통 [1] file 개성산전 2019.07.19 368
1667 디버깅 시 tList<t>.List w.a.t.c.h. 이상 작동 [9] 신재국 2020.02.25 368
1666 (자문 자답) JSON 안의 특정 필드 값만 바꾸는 방법은 TJsonPair를 사용하면 간단합니다. (POST, PUT 방식으로 특정 필드만 교체할 때, 특히 유용) [2] WhiteC 2020.06.15 368
1665 [질문] DX 10.2.3에서 MSVCR90.DLL 오류가 발생합니다. file 델사냥 2018.04.02 369
1664 android socket error [2] devdev 2018.10.17 369
1663 [XE8 출시세미나] 기존에 유니코드가 아니라 ANSI를 사용하고 있습니다. 델파이 2009 버전 이상에서는 무조건 유니코드를 써야하나요? 업그레이드 하더라도 ANSI를 계속 사용하려면 어떻게 하나요? [1] 관리자 2015.04.30 370
1662 [마이그레이션 세미나] AWS의 데이터베이스(RDS)에 연결하는 방법 중에서 웹서비스를 이용하는 방법에 대하여 알고 싶습니다. 험프리 2015.11.24 370
1661 IOS 배포 에러 질문드립니다. [PAClient Error] Error: E0776 [1] syc 2021.01.28 370
1660 모바일 앱 개발 시 구글음성 입력 기능을 호출하는 샘플이 있나요? [1] 손보라 2017.04.14 371