Добрый день. Подскажите, пожалуйста, как удалить строки с пустыми значениями , пробовал делать проверку на пустую строку, но пустые строки не исчезли

```1c
    &НаКлиенте
    Процедура Загрузить(Команда)
    // Вставить содержимое обработчика.

    ЗагрузитьИзDBF();

    Если ПроверкаЕдИзмНоменклатуры Тогда

    Для Каждого Строка Из ТЧ Цикл

    Товар = СокрЛП(Строка.ТоварНаим);

    КодНомПДКС = СокрЛП(Строка.ТоварКод);
    Номенклатура = ПолучитьНоменклатуру(КодНомПДКС);
    КодЕдИзмПДКС = СокрЛП(Строка.КодЕдИзмПДКС);
    НаимЕдИзмПДКС = СокрЛП(Строка.НаимЕдИзмПДКС);
    Товар1С = Номенклатура;
    КодЕдИзм1С = Код1СПолучить(Товар1С);
    ЕдИзм1СНаим = ЕдИзм1СПолучить(Товар1С);
    Кавычка = Прав(",1);
    НаимЕдИзм1С = Кавычка+ЕдИзм1СНаим+Кавычка;

    ТекСтрТабОшибокЕдИзмНоменклатуры = ТабОшибокЕдИзмНоменклатуры.Добавить();

    Если Не КодЕдИзм1С=КодЕдИзмПДКС Тогда

    ТекСтрТабОшибокЕдИзмНоменклатуры.Номенклатура = Товар1С;
    ТекСтрТабОшибокЕдИзмНоменклатуры.ЕдИзм1С = (НаимЕдИзм1С+", "+КодЕдИзм1С);
    ТекСтрТабОшибокЕдИзмНоменклатуры.ЕдИзмПарадокс = (НаимЕдИзмПДКС+", "+КодЕдИзмПДКС);
    ТекСтрТабОшибокЕдИзмНоменклатуры.РезультатПроверки = ("Различаются наименование или код единицы измерения");

    КонецЕсли;

    КонецЦикла;
    КонецЕсли;

    КонецПроцедуры
```
---
Зачем так все усложнять.

```1c
    Отбор = Новый Структура("Код,Наименование",",");
    МассивПустыхСтрок = ТабЗнач.НайтиСтроки(Отбор);
    Для Каждого СтрокаМассива из МассивПустыхСтрок Цикл
    ТабЗнач.Удалить(СтрокаМассива);
    КонецЦикла;
```

В отбор ставишь те поля таблицы, которые нужно проверять на пустоту.
В моем примере это Код и Наименование.
---
Кавычка = Прав("",1);
НаимЕдИзм1С = Кавычка+ЕдИзм1СНаим+Кавычка;
Это че за перл?
---
это для сравнения единиц измерений)
---
не-не, учитесь сразу писать нормальный код. в отладке посмотри на свою "кавычку!))
---
Да вроде все норм с ней )) Или как то иначе работать должно? Просто тут единицы измерения из дбф файла уже в кавычках идут, а в 1с без, соответственно по условию проверки ед измерения по наименованию уже будут различия, вот я кавычки и добавил ))
---
я бы избавился от кавычек так:
СтрЗаменить(СтрокаГдеМогутБытьКавычки,"""","")

если они там есть, или их нет - пофиг, будет без них
---
Я изначально так делал, но они не заменились. Поэтому решил добавить туда, где их нету =)
---
так надо ж делать правильно, это же функция:
СтрокаГдеМогутБытьКавычки = СтрЗаменить(СтрокаГдеМогутБытьКавычки,"""","");
и будет работать
---
ок,ща я напишу как у меня было изначально =)

```1c
    КодНомПДКС = СокрЛП(Строка.ТоварКод);
    Номенклатура = ПолучитьНоменклатуру(КодНомПДКС);
    КодЕдИзмПДКС = СокрЛП(Строка.КодЕдИзмПДКС);
    НаимЕдИзмПДКС = СокрЛП(Строка.НаимЕдИзмПДКС);
    //НаимЕдИзмПДКС = СтрЗаменить(СокрЛП(Строка.НаимЕдИзмПДКС,"","); ////вот это не отработало
    Товар1С = Номенклатура;
    КодЕдИзм1С = Код1СПолучить(Товар1С);
    ЕдИзм1СНаим = ЕдИзм1СПолучить(Товар1С);
    НаимЕдИзмПДКСБезКавычек = СтрЗаменить(НаимЕдИзмПДКС ,"","); ///// это тоже не отработало
```
---
или ты имеешь ввиду ,что надо было сделать вот так

```1c
    НаимЕдИзмПДКСБезКавычек = НаимБезКавычекПолучить()

    Функция НаимБезКавычекПолучить()

    //запрос из табличной части единиц измерения и так далее

    КонецФункции;
```
---
нет, я имел ввиду то, как я написал в предыдущем посте. это работает, поверь
---
да я знаю,что это работает, в других обработчиках отрабатывало, а тут не сработало, по какой причине не понятно, но я не просто так стал добавлять кавычки ))
---
так ты по сути ничего не добавлял то, Кавычка = Прав("",1) - вдумайся, что ты вот тут делаешь?
---
ну смотри, изначально единица измерения в 1с у меня была м. , после данной манипуляции я получил "м.", в пдф файле единица измерения так же "м." . У меня условие было на сравнение ед измерения по наименованию, соответственно, м. и "м." для программы уже будут как разные единицы измерения, из за отсутствия кавычек. Я стал убирать кавычки, но это не сработало, ну а если это не сработало, значит надо идти в обратном направлении и добавлять кавычки туда, где они отсутствуют . В общем как то так =)
---
Тебе надо хотя бы азы подучить. Ты их даже не знаешь
---
Я их учу постепенно, вникаю понемногу .Спасибо =)
---
в ДБФ полез, а основы - пропустил. учись от простого к сложному, иначе всегда будешь так на простых вещах зависать подолгу.
---
Спасибо за напутствие. Подскажи, пожалуйста, куда копать: заменить значения одни на другие, через нажатие кнопки заменить. Обработчик ПоискИЗамена значений разобрать надо?
---
Это что за обработчик? я такого не знаю. Есть СтрНайти(), есть СтрЗаменить(). Изучи для начала функции для работы со строками - не пожалеешь ;-)
---
Спасибо,ща попробую =) А обработчик нашел в инете, поиск и замена значений. Он работает по принципу консоли запросов, как я понял. Открываешь,вводишь что заменить и на что. Мне просто надо данные в 1с заменить на данные из дбф файла, не знаю, поможет ли мне функция стрзаменить,но я попробую)
---
это не обработчик - это внешняя обработка. не лезь ты в дебри, начинай с простого, иначе толку не будет
---
Простое это что например? А с заменой мне очень интересно разобраться, поэтому забрасывать не буду, буду пытаться ))
---
ну тут уже мы давно не по теме пошли, не будем ее раздувать еще больше. Есть обучающие курсы, книжки и т.п. Если это интересно, поднимай новую тему
---
Вот в дебри вы пошли, а ведь при чтении из внешних файлов, та же кавычка, может быть не совсем той кавычкой, поэтому надо было посоветовать человеку в СтрЗаменить() вставить кавычку из исходной строки.

UPD. Прочитал дальше и все стало яснее ясного)
---
Вот,еще раз проверил, на всякий случай) Второй вариант даже не хочу проверять))
---
о боже!... отладчик всегда показывает строки в кавычках!
Это не значит, что они там есть!!!
---
они там есть, в таблицу выводилось с кавычками ) из дбф были в кавычках, из 1с без них. Я ж говорю, не просто так я стал это прописывать
---
Зачем так все усложнять.

```1c
    Отбор = Новый Структура("Код,Наименование",",");
    МассивПустыхСтрок = ТабЗнач.НайтиСтроки(Отбор);
    Для Каждого СтрокаМассива из МассивПустыхСтрок Цикл
    ТабЗнач.Удалить(СтрокаМассива);
    КонецЦикла;
```

В отбор ставишь те поля таблицы, которые нужно проверять на пустоту.
В моем примере это Код и Наименование.
---
Спасибо!