ms sql create script for oHTKCacheTable:

    public async Task<string> GetPossibleTextAsync(int company, string item, int variation, int webPortal, bool doubleCheck,
     string attributeVorschlag, string attrPlaceholders, string modus, bool cache)
        {
            string sql = "SELECT [Bezeichnung1],[Bezeichnung2],[Matchcode],[Hersteller] FROM vwHTKMultiSKU_V2 WITH (NOLOCK) WHERE Artikelnummer=@myArtNum AND Mandant=@company";
            string osApiKey = "";
            string title = "";
            string hersteller = "";
            string data = "";
            DateTime timestamp = DateTime.MinValue;
            bool isCached = false;

            if (cache)
            {
                using (var conn = new SqlConnection(connStr))
                {
                    conn.Open();

                    using (var cmd = new SqlCommand("SELECT Data, Timestamp FROM oHTKCacheTable WHERE Item=@item AND Variation=@variation AND Company=@company AND Modus=@modus", conn))
                    {
                        cmd.Parameters.AddWithValue("item", item);
                        cmd.Parameters.AddWithValue("variation", variation);
                        cmd.Parameters.AddWithValue("company", company);
                        cmd.Parameters.AddWithValue("modus", modus);

                        using (var rd = cmd.ExecuteReader())
                        {
                            if (rd.Read())
                            {
                                data = rd.GetValue(0).ToString();
                                timestamp = DateTime.Parse(rd.GetValue(1).ToString());
                                isCached = true;
                            }
                        }
                    }
                }
            }

            if (!isCached)
            {
                using (var conn = new SqlConnection(connStr))
                {
                    conn.Open();

                    osApiKey = ApiToolBox.OmniSellerAPI.GetClientKey(conn);
                    using (var cmd = new SqlCommand(sql, conn))
                    {
                        cmd.Parameters.AddWithValue("myArtNum", item);
                        cmd.Parameters.AddWithValue("company", company);
                        using (var rd = cmd.ExecuteReader())
                        {
                            if (rd.Read())
                            {
                                title = rd.GetValue(0).ToString() + " " + rd.GetValue(1).ToString();
                                title = title.Trim();
           There should be exactly 2 paragraphs separated by the markdown divider: ***.
user