def script_parameter_text()

in Python/sqlmlutils/sqlbuilder.py [0:0]


    def script_parameter_text(self,
                            in_names: List[str],
                            in_types: dict, 
                            out_names: List[str], 
                            out_types: dict) -> str:
                            
        if not in_names and not out_names:
            return ""

        script_params = ""
        self._script = "\nfrom pandas import DataFrame\n" + self._script

        in_data_name = ""
        out_data_name = ""

        for name in in_names:
            if in_types[name] == DataFrame:
                in_data_name = name
                in_names.remove(name)
                break

        for name in out_names:
            if out_types[name] == DataFrame:
                out_data_name = name
                out_names.remove(name)
                break

        if in_data_name != "":
            script_params += ",\n" + self.get_input_data_set(in_data_name)

        if out_data_name != "":
            script_params += ",\n" + self.get_output_data_set(out_data_name)

        if len(in_names) > 0 or len(out_names) > 0:
            script_params += ","

        in_params_declaration = out_params_declaration = ""
        in_params_passing = out_params_passing = ""

        if len(in_names) > 0:
            in_params_declaration = self.get_declarations(in_names, in_types)
            in_params_passing = self.get_params_passing(in_names)

        if len(out_names) > 0:
            out_params_declaration = self.get_declarations(out_names, out_types, True)
            out_params_passing = self.get_params_passing(out_names, True)

        params_declaration = self.combine_in_out(in_params_declaration, out_params_declaration)
        params_passing = self.combine_in_out(in_params_passing, out_params_passing)

        if params_declaration != "":
            script_params += "\n@params = N'{params_declaration}',\n    {params_passing}".format(
                params_declaration=params_declaration,
                params_passing=params_passing
            )

        return script_params