Project

General

Profile

7235-20230425.patch

Dănuț Filimon, 04/25/2023 05:50 AM

Download (2.14 KB)

View differences:

new/src/com/goldencode/p2j/persist/FQLPreprocessor.java 2023-04-25 09:39:47 +0000
2977 2977
                  // this is a predicate root-level boolean function. Replace with boolFn() = 1
2978 2978
                  needSQLBooleanConversion.add(next);
2979 2979
               }
2980
               
2981
               if ("exists".equals(next.getText()) && next.getFirstChild().getType() == SUBSELECT)
2982
               {
2983
                  HQLAst subSelectNode = (HQLAst) next.getFirstChild();
2984
                  
2985
                  if (subSelectNode.getFirstChild().getType() == SELECT)
2986
                  {
2987
                     break;
2988
                  }
2989
                  
2990
                  HQLAst selectNode = new HQLAst();
2991
                  selectNode.setType(SELECT);
2992
                  selectNode.setText("select");
2993
                  subSelectNode.graftAt(selectNode, 0);
2994
                  
2995
                  HQLAst selectValueNode = new HQLAst();
2996
                  selectValueNode.setType(NUM_LITERAL);
2997
                  selectValueNode.setText("1");
2998
                  subSelectNode.graftAt(selectValueNode, 1);
2999
               }
3000
               
2980 3001
               break;
2981 3002
               
2982 3003
            case PROPERTY:
......
5814 5835
                        buf.append(" as ");
5815 5836
                     }
5816 5837
                     break;
5838
                  case SUBSELECT:
5839
                     Aast child = ast.getChildAt(index);
5840
                     if (child.getType() == NUM_LITERAL)
5841
                     {
5842
                        if (ast.getChildAt(index - 1).getType() != SELECT)
5843
                        {
5844
                           buf.append(",");
5845
                        }
5846
                        buf.append(" ");
5847
                     }
5848
                     
5849
                     if (child.getType() == FROM)
5850
                     {
5851
                        buf.append(" ");
5852
                     }
5853
                     break;
5817 5854
                     
5818 5855
                  default:
5819 5856
                     break;