2

I could open my query result as a spreadsheet document in a separate window, but I need to place it on a data processor form. How can I do that?

I use 1C:Enterprise platform versoin 8.3.13

&AtClient
Procedure Create(Command)

   SpreadsheetDocument = CreateServer(Period);
   SpreadsheetDocument.Show("Report by counterparties");

EndProcedure

&AtServer
Function CreateServer(Period)

   Query = New Query;   

   Query.Text = "SELECT
       |   SUM(MutualSettlementsBalance.AmountBalance) AS Amount,
       |   MutualSettlementsBalance.Counterparty AS Counterparty
       |FROM
       |   AccumulationRegister.MutualSettlements.Balance(&Period, ) AS MutualSettlementsBalance
       |
       |GROUP BY
       |   MutualSettlementsBalance.Counterparty";

   Query.SetParameter("Period", Period);

   QueryResult = Query.Execute();

   SelectionDetailRecords = QueryResult.Choose();

    SpreadsheetDocument = New SpreadsheetDocument();   

    Template = GetCommonTemplate("Template");
    DataArea = Template.GetArea("Data");        

   While SelectionDetailRecords.Next() Do

        DataArea.Parameters.Counterparty = SelectionDetailRecords.Counterparty;  
        DataArea.Parameters.Amount = SelectionDetailRecords.Amount;          
        SpreadsheetDocument.Put(DataArea);     

   EndDo;

    Return SpreadsheetDocument;

EndFunction
Eugene
  • 105
  • 5

1 Answers1

1

You can add a SpreadsheetDocument form attribute on your form and use the same script, but remove SpreadsheetDocument.Show("Report by counterparties");

OksanaSut
  • 26
  • 1