OSDN Git Service

並び替えの必要はありませんでした。すでにソフトウェアで対応済みの問題でした。
authoryamat0jp <terukohietori@gmail.com>
Sat, 11 Jan 2020 05:34:00 +0000 (14:34 +0900)
committeryamat0jp <terukohietori@gmail.com>
Sat, 11 Jan 2020 05:34:00 +0000 (14:34 +0900)
Unit1.dfm
WebModuleUnit1.pas

index 33d84c5..f256f08 100644 (file)
--- a/Unit1.dfm
+++ b/Unit1.dfm
@@ -34,7 +34,7 @@ object DataModule1: TDataModule1
     Top = 24
   end
   object FDTable2: TFDTable
-    IndexFieldNames = 'DBNUM;NUMBER:A'
+    IndexFieldNames = 'DBNUM;NUMBER'
     MasterSource = DataSource1
     MasterFields = 'DBNUM'
     Connection = FDConnection1
index a04fe58..b504179 100644 (file)
@@ -110,7 +110,7 @@ type
     procedure pages(count: Integer; var page: Integer);
     procedure strsCheck(var error: string; var list: TStringList);
     procedure setLastArticle;
-    function isInfo(sort: Boolean = true): Boolean;
+    function isInfo: Boolean;
     function loginCheck: Boolean;
     function hash(str: string): string;
     function mente: Boolean;
@@ -133,8 +133,6 @@ uses Unit1, IdHashSHA, IdGlobal, IdHash, IdHashMessageDigest;
 const
   promotion = '\8dL\8d\90:';
   tcnt = 7;
-  sortNormal = 'DBNUM;NUMBER';
-  sortReverse = 'DBNUM;NUMBER:A';
 
 procedure TWebModule1.adheadHTMLTag(Sender: TObject; Tag: TTag;
   const TagString: string; TagParams: TStrings; var ReplaceText: string);
@@ -301,24 +299,20 @@ procedure TWebModule1.indexHTMLTag(Sender: TObject; Tag: TTag;
   const TagString: string; TagParams: TStrings; var ReplaceText: string);
 var
   i: Integer;
-  x: Boolean;
 begin
   if TagString = 'pr' then
     ReplaceText := promotion
   else if TagString = 'article' then
   begin
-    x := DataModule1.FDTable1.FieldByName('dbnum')
-      .AsInteger = DataModule1.FDTable3.FieldByName('info').AsInteger;
     for i := 1 to DataModule1.FDTable3.FieldByName('count').AsInteger do
     begin
       if DataModule1.FDTable2.Eof = true then
         break;
-      if x = false then
+      if isInfo = false then
         ReplaceText := ReplaceText + articles.Content
       else
         ReplaceText := articles.Content + ReplaceText;
-      if DataModule1.FDTable2.Eof = false then
-        DataModule1.FDTable2.Next;
+      DataModule1.FDTable2.Next;
     end;
   end
   else if TagString = 'footer' then
@@ -344,29 +338,12 @@ begin
     ReplaceText := DataModule1.FDTable1.FieldByName('database').AsString;
 end;
 
-function TWebModule1.isInfo(sort: Boolean = true): Boolean;
+function TWebModule1.isInfo: Boolean;
 var
   s: string;
 begin
   result := DataModule1.FDTable1.FieldByName('dbnum')
     .AsInteger = DataModule1.FDTable3.FieldByName('info').AsInteger;
-  if sort = false then
-    Exit;
-  with DataModule1.FDTable2 do
-  begin
-    s := IndexFieldNames;
-    if (result = false) and (s = sortNormal) then
-      Exit;
-    Close;
-    try
-      if result = true then
-        IndexFieldNames := sortReverse
-      else
-        IndexFieldNames := sortNormal;
-    finally
-      Open;
-    end;
-  end;
 end;
 
 procedure TWebModule1.itemsHTMLTag(Sender: TObject; Tag: TTag;
@@ -1135,12 +1112,9 @@ begin
     end
     else
     begin
-      if isInfo(false) = true then
-        DataModule1.FDTable2.IndexFieldNames := '';
       i := DataModule1.FDTable1.FieldByName('dbnum').AsInteger;
       DataModule1.FDTable2.AppendRecord([i, number, title, na, comment.Text,
         raw, Now, pass]);
-      isInfo;
       Response.SendRedirect('index?db=' + i.ToString + '#article');
       Exit;
     end;