Jump to content

Kano

Members
  • Posts

    2
  • Joined

  • Last visited

Posts posted by Kano

  1. Hello everyone ,

     

    i try for a couple of days to solve the following problem with no success , i will demonstrate it in the next lines in a concise and clear way as much as possible and hope to find an elegant solution.

     

    so here we go , consider i have a multiple AFL files (for the sake of simplicity assume there are only 5 files) , each one of them have only one variable , let's call it "iso"

    each file is named after its ordinal number (1.afl , 2.afl , .. , 5.afl) and the iso variable is equal to the oridinal number of the file in which it exist. (e.g iso in 3.afl would equal to 3)

     

    now i try to use #include_once to fetch the content of each file , simply i want to get the value of iso in each file.

    AFAIK there's no direct way to use a dynamic address path in front of #include so i pursued the following approach

     

    My first approach was to use a dynamic string variable as in the following code

     

    Color = IIf(Ref(C,-1) < C,colorCustom1,colorCustom2); SetBarFillColor(Color);
    Plot(C,"Close",colorBlack, styleNoTitle | styleCandle );
    
    _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} - {{DATE}} Open %1.5f , Hi %1.5f , Lo %1.5f , Close %1.5f (%.1f%%) , Vol %s"+"\n"+"{{VALUES}}", O, H, L, C, SelectedValue(ROC(C,1)),NumToStr(V,1.00)));
    
    //---------------------------------------------------------------------------------*/
    
    Export_Triggers = ParamTrigger("Start Data Export To A Separate File","Execute");
    
    //---------------------------------------------------------------------------------
    
    iso = 00;
    
    FH_Content =
    AFL_Content = "";
    
    //---------------------------------------------------------------------------------
    
    if (Export_Triggers)
    {
    for (i = 01; i <= 5; i++)
    {
    //Source_Path = "F:\\ZZ\\T.afl";
    AFL_Files_Path = "F:\\ZZ\\"+i+".afl";
    //Indirective_Ref = "#"+"Include_Once \""+AFL_Files_Path+"\"";
    
    FH = fopen(AFL_Files_Path , "r"); FH_Content = fgets(FH); fclose(FH);
    //FH = fopen(Source_Path , "w"); fputs(FH_Content,FH); fclose(FH);
    //FH = fopen(Source_Path , "w"); fputs(Indirective_Ref,FH); fclose(FH);
    
    
    #pragma nocache
    #include_once AFL_Files_Path
    
    _TRACE("iso = "+iso+"\n");
    }
    }
    

     

     

    My second approach was to use a static string variable that contain address path to a file named T.afl , that file nest #include with the desired path to files where iso variable exist

     

    Color = IIf(Ref(C,-1) < C,colorCustom1,colorCustom2); SetBarFillColor(Color);
    Plot(C,"Close",colorBlack, styleNoTitle | styleCandle );
    
    _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} - {{DATE}} Open %1.5f , Hi %1.5f , Lo %1.5f , Close %1.5f (%.1f%%) , Vol %s"+"\n"+"{{VALUES}}", O, H, L, C, SelectedValue(ROC(C,1)),NumToStr(V,1.00)));
    
    //---------------------------------------------------------------------------------*/
    
    Export_Triggers = ParamTrigger("Start Data Export To A Separate File","Execute");
    
    //---------------------------------------------------------------------------------
    
    iso = 00;
    
    FH_Content =
    AFL_Content = "";
    
    //---------------------------------------------------------------------------------
    
    if (Export_Triggers)
    {
    for (i = 01; i <= 5; i++)
    {
    Source_Path = "F:\\ZZ\\T.afl";
    AFL_Files_Path = "F:\\ZZ\\"+i+".afl";
    Indirective_Ref = "#"+"Include_Once \""+AFL_Files_Path+"\"";
    
    FH = fopen(AFL_Files_Path , "r"); FH_Content = fgets(FH); fclose(FH);
    //FH = fopen(Source_Path , "w"); fputs(FH_Content,FH); fclose(FH);
    FH = fopen(Source_Path , "w"); fputs(Indirective_Ref,FH); fclose(FH);
    
    
    #pragma nocache
    #include_once Source_Path
    
    _TRACE("iso = "+iso+"\n");
    }
    }
    

     

     

    My third approach was to copy the content of each 5 files and paste it into T.afl

     

    Color = IIf(Ref(C,-1) < C,colorCustom1,colorCustom2); SetBarFillColor(Color);
    Plot(C,"Close",colorBlack, styleNoTitle | styleCandle );
    
    _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} - {{DATE}} Open %1.5f , Hi %1.5f , Lo %1.5f , Close %1.5f (%.1f%%) , Vol %s"+"\n"+"{{VALUES}}", O, H, L, C, SelectedValue(ROC(C,1)),NumToStr(V,1.00)));
    
    //---------------------------------------------------------------------------------*/
    
    Export_Triggers = ParamTrigger("Start Data Export To A Separate File","Execute");
    
    //---------------------------------------------------------------------------------
    
    iso = 00;
    
    FH_Content =
    AFL_Content = "";
    
    //---------------------------------------------------------------------------------
    
    if (Export_Triggers)
    {
    for (i = 01; i <= 5; i++)
    {
    Source_Path = "F:\\ZZ\\T.afl";
    AFL_Files_Path = "F:\\ZZ\\"+i+".afl";
    Indirective_Ref = "#"+"Include_Once \""+AFL_Files_Path+"\"";
    
    FH = fopen(AFL_Files_Path , "r"); FH_Content = fgets(FH); fclose(FH);
    FH = fopen(Source_Path , "w"); fputs(FH_Content,FH); fclose(FH);
    //FH = fopen(Source_Path , "w"); fputs(Indirective_Ref,FH); fclose(FH);
    
    
    #pragma nocache
    #include_once Source_Path
    
    _TRACE("iso = "+iso+"\n");
    }
    }
    

     

     

    None of the above approach work as i trace iso and find it is value equal to zero (the initialized value in the beginning of the code) ,

    at this stage i were overwhelmed and have exhausted all of my tricks so i decided to ask for help ,

    what do you think about this kind of problems ? does it have a solution ?

     

    Thank you for your patience.

     

     

×
×
  • Create New...