예제 #1
0
        private static void FinalizarPagina(Pagina curPagina)
        {
            // If previous page has no Procs, then clear the columns of that page.
            if (curPagina != null)
            {
                var cntProcsInPage = curPagina.GetProcs().Length;

                if (cntProcsInPage == 0)
                {
                    curPagina.Colunas.Clear();
                    curPagina.Colunas.Capacity = 0;
                }
                else
                {
                    var sequences = new[]
                    {
                        new string[] { },
                        new[] { "código", "procedimentos", "porte" },
                        new[] { "código", "procedimentos", "porte", "custo oper" },
                        new[] { "código", "procedimentos", "porte", "custo oper", "porte anest" },
                        new[] { "código", "procedimentos", "porte", "custo oper", "nº de aux" },
                        new[] { "código", "procedimentos", "porte", "custo oper", "nº de aux", "porte anest" },
                        new[] { "código", "procedimentos", "ur", "filme ou doc", "porte", "custo oper" },
                        new[] { "código", "procedimentos", "inc", "filme ou doc", "porte", "custo oper" },
                        new[] { "código", "procedimentos", "inc", "filme ou doc", "porte", "custo oper", "nº de aux", "porte anest" },
                    };

                    bool isColumnsValid = curPagina.FixColumnsOrder(sequences);

                    if (!isColumnsValid)
                    {
                        throw new Exception("Invalid sequence of columns.");
                    }
                }
            }
        }