예제가 약간 애매한 경우 사과드립니다. 불행히도 필자는 회사 이름과 데이터의 목적을 모두 밝히지 않고 동일한 필드 이름을 사용할 수 없습니다.Crystal Reports 헤더 하위 보고서 DataTable에 새 필드가 추가되면 데이터가 사라집니다.
을 감안할 때 다음
XSD 스키마 파일에 데이터 세트와 바인딩에 의해 채워크리스탈 리포트;
데이터 집합을 채우고 보고서에 바인딩하는 .Net 1.1 프로그램.
데이터 테이블 Foo 및 Bar;
XSD 스키마 :
----Foo----
Stuff (pk)
Things
Gunk
----Bar----
Stuff (fk)
Details
Widget
관계 : 한 푸 1 개 이상의 막대를 가질 수 있습니다, 내부는 물건에 가입.
이 보고서는 이미 작동합니다. 보고서에 새로운 '코드'입력란을 추가하여 계약과 관련된 특정 가치를 나타내는 요청이있었습니다. 코드 목록과 특정 코드가있는 부분 목록이 있습니다. 즉, 데이터베이스 측에서 "위젯"과 "CodeID"가있는 테이블을 연결 테이블로 추가하여 어떤 코드가 어떤 위젯과 연결되는지를 나타내는 테이블과 "CodeID"및 "CodeDescr"이있는 테이블을 추가하여 코드와 그 정의를 보관합니다. . Bar에 "CodeDescr"을 추가하고 "위젯"에 해당 행의 값을 기반으로 간단한 쿼리를 채우도록 스키마 파일을 수정하여 필드를 추가 할 수있었습니다. 이것은 또한 작동합니다.
문제는 머리글을 구성하는 하위 보고서입니다. 동일한 XSD 파일을 사용하지만 CodeDescr 필드가 보고서의 본문을 구성하는 하위 보고서에 추가되면 머리글의 모든 값이 사라집니다. 이러한 값 중 일부는 리터럴 (항목을 식별하는 'Stuff'의 값)이고 다른 것은 (Gunk의 값을 사용하여 문자열 또는 숫자 식별자를 표시할지 여부를 결정하는 등의) 수식입니다. 나는 3 일 동안 책상 위에 내 머리를 두드리는 소리로 멈추어 서 왜 이것이 멈춰서서 고칠 수 있는지 알아 내려고했습니다. 도움!
당신은 협회를 완벽하게 소유하고 있습니다. 모든 하위 보고서는 세부 정보 섹션을 사용하므로 일치합니다. 그러나 내가 처단 할 수있는 유일한 편집기는 Visual Studio 2003에 내장 된 사악한 편집기라는 점을 잊어 버렸습니다. 링크를 확인한 결과 예상대로였습니다. 나는이 문제들이 잘려나고 내부 결합보다 성공을 거두지 못한 채로 Left Outer 조인을 시도했다. 이것은 또한 기존의 "레코드 선택"이 없으며 전체 데이터 집합이 VB.Net에서 조합된다는 것을 의미합니다. 테이블을 호출하는 SQL 문의 결과를 얻는 단일 메소드가 변경되었습니다. – CDove
알기. 공평하게 말하면 내 지식이 떨어지는 곳일 것입니다. 우리가 종종 팔꿈치를 문지르는 동안, VB.NET과 나는 가까운 용어에 있지 않습니다. 내 의견은 지나치게 복잡한 보고서처럼 들리지 않으므로 Crystal Reports의 GUI에서 그 보고서를 작성하고 여전히 문제가 있는지 확인할 수 있습니다. 즉, VB.NET 노하우를 가진 사람이보다 합리적이고 바람직한 솔루션을 얻을 수 있도록 도와 줄 수 있습니다. 행운을 빈다. 내 지역으로 돌아갈 경우를 대비하여 질문을 계속 지켜봐야한다. – Jackson