• Как увеличить значение реквизита?

    @kalapanga
    Так и непонятно, какие же Вы способы пробовали и что не получилось. Там как бы вариантов-то особенно нет.
    - В форме документа добавить команду формы
    - Разместить команду на форме, она отобразится в виде кнопки (или добавить на форму кнопку и ей назначить эту команду)
    - В действии команды написать: Объект.НужныйМнеРеквизит = Объект.НужныйМнеРеквизит + 1;
    и можно ещё добавить Модифицированность = Истина;
    "Объект" - обычно так называется основной реквизит формы имеющий тип ДокументОбъект.НужныйМнеДокумент (посмотрите на формы типовых документов для примера)
    Ответ написан
    1 комментарий
  • Как увеличить счётчик при нажатии на кнопку в 1С?

    Fragster
    @Fragster
    помогло? отметь решением!
    Нужно завести РС или реквизит документа с именем Счетчик. В случае реквизита документа - в обработчике ПредеЗаписью проверяем РежимЗаписи, если Проведение - увеличиваем. В случае РС - можно прям в обработчике проведения читать запись, увеличивать и записывать обратно.
    Ответ написан
    Комментировать
  • Как удалить из строки все, кроме определенного шаблона?

    @avgwowenjoyer
    Возможно сделать так, при условии, что это будет единственное число с двумя и более знаками:
    String str = "<какой-то текст или символы>130 кг<какой-то текст или символы>";
    String substr = str.replaceAll("\\d{2,}| кг", "");
    String output= str.replaceAll(substr, "");
    System.out.println(output);
    Ответ написан
    Комментировать
  • Как определить, содержится ли массив строк в другом массиве строк?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Нужно пройтись по кажому элементу из второго массива и выяснить содержится ли он в первом массиве.
    Если все содержатся - вернуть true, если хотя бы один не нашелся - false.
    Ответ написан
    1 комментарий
  • Как разделить строку определенным образом?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    var s = "от 124 871 до 252 676 уе";
    
            var pattern = Pattern.compile("от (?<from>[0-9\\s]*) до (?<to>[0-9\\s]*) уе");
            var matcher = pattern.matcher(s);
    
            if (matcher.find()) {
                System.out.println(matcher.group("from"));
                System.out.println(matcher.group("to"));
            }
    Ответ написан
    Комментировать
  • Как разделить строку определенным образом?

    @dodo512
    Pattern pattern = Pattern.compile("от ([0-9 ]+) до ([0-9 ]*[0-9])");
    Matcher matcher = pattern.matcher("от 124 871 до 252 676 уе");
    
    if (matcher.find()) {
        System.out.println(matcher.group(1));
        System.out.println(matcher.group(2));
    }
    Ответ написан
    Комментировать
  • Как парсить данные с localhost:8080, используя Jsoup?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Я посмотрел на исходный код проекта и все стало на свои места.
    Во-первых, этот проект использует Vaadin. К сожалению, мне не доводилось использовать его, но я могу сказать следующее:
    Контент страницы формируется динамически на клиенте. JSoup не умеет работать с динамически формируемым контентом и потому, на момент парсинга документа там лишь:
    <div id="outlet"></div>
    Соответственно, чтобы спарсить динамический контент вам нужно:
    1) либо изучить внутренний АПИ и спарсить json, который возвращается извне. Зайдите во вкладку Network (Сеть) браузера и отфильтруйте XHR запросы и гляньте, на какой эндпоинт выполняется запрос и что возвращается в ответ.
    2) либо спарсить сайт при помощи Selenium. (запустить браузер, дождаться загрузки страницы, получить документ, получить List<WebElement>)
    Ответ написан
    1 комментарий
  • Как объединить 2 ArrayList в 1 по совпадающему значению (id)?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Собираем из коллекции Map, в которой key - это id, а value - сам объект. Коллектор третьим аргументом принимает merge-функцию:
    var productListWithUrlName = new ArrayList<Product>();
            var productListWithPrice = new ArrayList<Product>();
    
            var mergedProducts = Stream.concat(productListWithPrice.stream(), productListWithUrlName.stream())  // Объединяем коллекции
                    .collect(Collectors.toMap(Product::id, Function.identity(), (product1, product2) -> mergeProducts(product1, product2)));


    Остается реализовать метод mergeProducts, который будет объединять два Product и возвращать результат.
    private Product mergeProducts(Product product1, Product product2) {
            // TODO :: реализовать объединение двух Product
        }
    Ответ написан
    Комментировать
  • Как объединить 2 ArrayList в 1 по совпадающему значению (id)?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Одно из возможных решений:
    - создайте Map<Long, Product>
    Long - id продукта
    - Добавьте элементы первого List'а в Map.
    - Итерируйте по второму List'у. Внутри цикла получите товар из Map по идентификатору объекта из второго List'a.
    - При помощи сеттеров назначьте значения.
    - Если товара с таким ID нет, то добавьте в Map

    Вот, похожий вопрос - https://stackoverflow.com/questions/12670756/join-...
    Ответ написан
    Комментировать
  • При наличии on_message(), @bot.command не работает, что делать?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Сейчас в коде какая-то каша. Зачем внутри класса MyClient, порождённого от Client, использовать методы с декораторами от ранее созданного инстанса другого потомка Client - commands.Bot? Это не имеет никакого смысла. Убери класс MyClient вообще, а все его методы перенеси на уровень выше (с соответствующим убиранием self везде в аргументах и заменой self на bot в коде). Вместо client.run сделай bot.run.
    Ответ написан
    Комментировать