2011-09-23 5 views
6

I가이 오류라고 계속 크리스탈 리포트 :크리스탈 보고서 개체 참조가 개체의 인스턴스로 설정되지

{ "개체 참조가 개체의 인스턴스로 설정되지 않았습니다."}

스택 트레이스를 :

at CrystalDecisions.Windows.Forms.PageControl.OnMouseMove(MouseEventArgs e) 
    at System.Windows.Forms.Control.WmMouseMove(Message& m) 
    at System.Windows.Forms.Control.WndProc(Message& m) 
    at System.Windows.Forms.ScrollableControl.WndProc(Message& m) 
    at System.Windows.Forms.UserControl.WndProc(Message& m) 
    at CrystalDecisions.Windows.Forms.PageControl.WndProc(Message& m) 
    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 
    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 
    at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 
    at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) 
    at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) 
    at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame) 
    at System.Windows.Window.ShowHelper(Object booleanBox) 
    at System.Windows.Window.Show() 
    at System.Windows.Window.ShowDialog() 
    at ADR.Forms.GALReport.GuardianAdLitemReport.btnPreviewReport() in C:\Users\user\Development\ProjectADR\ADR\Forms\CaseCoordinatorReports\GALReport\GuardianAdLitemReport.xaml.cs:line 527 
    at ADR.Forms.GALReport.GuardianAdLitemReport.Button_Click(Object sender, RoutedEventArgs e) in C:\Users\user\Development\ProjectADR\ADR\Forms\CaseCoordinatorReports\GALReport\GuardianAdLitemReport.xaml.cs:line 90 
    at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) 
    at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) 
    at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) 
    at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e) 
    at System.Windows.Controls.Primitives.ButtonBase.OnClick() 
    at System.Windows.Controls.Button.OnClick() 
    at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e) 
    at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e) 
    at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) 
    at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) 
    at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) 
    at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) 
    at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent) 
    at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e) 
    at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) 
    at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) 
    at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) 
    at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) 
    at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) 
    at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args) 
    at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted) 
    at System.Windows.Input.InputManager.ProcessStagingArea() 
    at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input) 
    at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport) 
    at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel) 
    at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled) 
    at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) 
    at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) 
    at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) 
    at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) 
    at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler) 
    at System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) 
    at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) 
    at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) 
    at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) 
    at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame) 
    at System.Windows.Threading.Dispatcher.Run() 
    at System.Windows.Application.RunDispatcher(Object ignore) 
    at System.Windows.Application.RunInternal(Window window) 
    at System.Windows.Application.Run(Window window) 
    at System.Windows.Application.Run() 
    at ADR.Program.Main() in C:\Users\user\Development\ProjectADR\ADR\Program.cs:line 57 
    at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args) 
    at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) 
    at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() 
    at System.Threading.ThreadHelper.ThreadStart_Context(Object state) 
    at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) 
    at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 
    at System.Threading.ThreadHelper.ThreadStart() 

때때로로드됩니다. 대부분의 경우이를 나타냅니다. 그것은 교대로 말하는 것 같습니다. 보고서를 다시 실행하면 두 번째 실행시 예상대로 보고서가로드됩니다. 뭐가 잘못 되었 니?

이 코드에서 중지합니다. crview.ShowDialog();

배경을 제공하기 위해 otehr 보고서와 동일한 데이터 세트 소스를 사용하고 있습니다. 그러나 다른 보고서는 이러한 종류의 문제를지지하지 않습니다. 누가 말해 줄 수 있니? 감사.

+0

예 다음과 같이 crview를 인스턴스화했습니다. CrystalReportViewerUC crview = new CrystalReportViewerUC(); crview.SetReportPathFile (reportPath); crview.BuildDataTable (ds, dsName); 모두가 가치가 있고 null이 아닌 것을 보려고 노력했습니다. – user742102

+0

동일한 문제가 있습니다. 벌써 해결 했니? – Martijn

+0

미안하지만. 나는 그저 그렇게하도록 내버려 두었다. 어쨌든 배포/설치된 응용 프로그램에서는 발생하지 않습니다. 오직 VS를 사용하여 실행할 때 디버그/런타임 내 PC에. – user742102

답변

2

이것은 오래된 스레드이지만 다음은 내가이 문제를 해결 한 방법입니다.

페이지의 경계를 벗어난 수식이있는 텍스트 상자가 있음을 발견했습니다. 따라서 NULL 문자열을 사용하여 새 페이지를 만들었습니다. 수식이 충돌하여 다음 오류가 발생했습니다.

System.NullReferenceException 처리되지 않았습니다. 메시지 = 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

때때로 반환 값으로 인해 TextObject가 커지기 때문에 한 번만 보았습니다.

는 여전히
  • 다시 위치 텍스트 상자 내 페이지 크기와 설정 CanGrow의 범위 내 여분의 빈 페이지를 야기하지만, 나는 공식을 해결할 수

    • 이 널 (NULL)을 처리하기 위해 해결하기 거짓으로.

    사용자가 프린터에서 더 작은 용지 크기를 선택하여 의도하지 않게 빈 페이지를 만들 수 있기 때문에 둘 다 선택했습니다.

  • 0

    해결! 나는 수년간이 문제가 있었다! DataSet에서 reportSource로 작업합니다. 마지막으로, 포럼에서 찾을 수있는 모든 솔루션을 시도한 후에 직접 데이터 세트에 null 값이 포함되어 있으므로 DBNull 대신 DataSet 문자열 필드 DefaultValue : ""를 작성해야했습니다. 간단하면서도 효과적입니다.

    희망이 도움이됩니다.

    관련 문제