protected virtual bool ReadRowFromDataSet()
 {
     if (m_nextDataFieldRowToProcess != null)
     {
         m_nextDataFieldRowToProcess.SetFields(m_odpContext.ReportObjectModel.GetFieldsImplForUpdate(m_idcDataSet));
         m_nextDataFieldRowToProcess = null;
     }
     else
     {
         if (m_dataSource == null)
         {
             if (m_odpContext.QueryRestartInfo != null)
             {
                 SetupRelationshipQueryRestart();
             }
             m_dataSource = new RuntimeIdcIncrementalDataSource(m_idcDataSet, m_odpContext);
             m_dataSource.Initialize();
         }
         if (!m_dataSource.SetupNextRow())
         {
             return(false);
         }
     }
     return(true);
 }
 protected void SetupFields(DataFieldRow dataRow)
 {
     if (dataRow == null)
     {
         m_odpContext.ReportObjectModel.CreateNoRows();
     }
     else
     {
         dataRow.SetFields(m_odpContext.ReportObjectModel.FieldsImpl);
     }
 }
예제 #3
0
 private void Traverse(DataFieldRow dataRow, ProcessingStages operation, DataRowSortOwnerTraversalContext context, IHierarchyObj owner)
 {
     dataRow.SetFields(owner.OdpContext.ReportObjectModel.FieldsImpl);
     if (operation == ProcessingStages.UserSortFilter)
     {
         owner.ReadRow();
     }
     else
     {
         context.SortOwner.PostDataRowSortNextRow();
     }
 }